{
 "cells": [
  {
   "cell_type": "code",
   "execution_count": 3,
   "metadata": {},
   "outputs": [],
   "source": [
    "import pandas as pd\n",
    "import matplotlib.pyplot as plt"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 4,
   "metadata": {},
   "outputs": [],
   "source": [
    "import numpy as np"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 7,
   "metadata": {},
   "outputs": [],
   "source": [
    "df = pd.read_csv('./log.txt', header=None, sep='\\t')"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 8,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/html": [
       "<div>\n",
       "<style scoped>\n",
       "    .dataframe tbody tr th:only-of-type {\n",
       "        vertical-align: middle;\n",
       "    }\n",
       "\n",
       "    .dataframe tbody tr th {\n",
       "        vertical-align: top;\n",
       "    }\n",
       "\n",
       "    .dataframe thead th {\n",
       "        text-align: right;\n",
       "    }\n",
       "</style>\n",
       "<table border=\"1\" class=\"dataframe\">\n",
       "  <thead>\n",
       "    <tr style=\"text-align: right;\">\n",
       "      <th></th>\n",
       "      <th>0</th>\n",
       "      <th>1</th>\n",
       "      <th>2</th>\n",
       "      <th>3</th>\n",
       "      <th>4</th>\n",
       "      <th>5</th>\n",
       "      <th>6</th>\n",
       "      <th>7</th>\n",
       "      <th>8</th>\n",
       "    </tr>\n",
       "  </thead>\n",
       "  <tbody>\n",
       "    <tr>\n",
       "      <th>0</th>\n",
       "      <td>2019162542</td>\n",
       "      <td>/front-api/bill/create</td>\n",
       "      <td>8</td>\n",
       "      <td>1057.31</td>\n",
       "      <td>88.75</td>\n",
       "      <td>177.72</td>\n",
       "      <td>132.0</td>\n",
       "      <td>60</td>\n",
       "      <td>2018-11-01 00:00:07</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>1</th>\n",
       "      <td>162644</td>\n",
       "      <td>/front-api/bill/create</td>\n",
       "      <td>5</td>\n",
       "      <td>749.12</td>\n",
       "      <td>103.79</td>\n",
       "      <td>240.38</td>\n",
       "      <td>149.0</td>\n",
       "      <td>60</td>\n",
       "      <td>2018-11-01 00:01:07</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2</th>\n",
       "      <td>162742</td>\n",
       "      <td>/front-api/bill/create</td>\n",
       "      <td>5</td>\n",
       "      <td>845.84</td>\n",
       "      <td>136.31</td>\n",
       "      <td>225.73</td>\n",
       "      <td>169.0</td>\n",
       "      <td>60</td>\n",
       "      <td>2018-11-01 00:02:07</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>3</th>\n",
       "      <td>162808</td>\n",
       "      <td>/front-api/bill/create</td>\n",
       "      <td>9</td>\n",
       "      <td>1305.52</td>\n",
       "      <td>90.12</td>\n",
       "      <td>196.61</td>\n",
       "      <td>145.0</td>\n",
       "      <td>60</td>\n",
       "      <td>2018-11-01 00:03:07</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>4</th>\n",
       "      <td>162943</td>\n",
       "      <td>/front-api/bill/create</td>\n",
       "      <td>3</td>\n",
       "      <td>568.89</td>\n",
       "      <td>138.45</td>\n",
       "      <td>232.02</td>\n",
       "      <td>189.0</td>\n",
       "      <td>60</td>\n",
       "      <td>2018-11-01 00:04:07</td>\n",
       "    </tr>\n",
       "  </tbody>\n",
       "</table>\n",
       "</div>"
      ],
      "text/plain": [
       "            0                       1  2        3       4       5      6   7  \\\n",
       "0  2019162542  /front-api/bill/create  8  1057.31   88.75  177.72  132.0  60   \n",
       "1      162644  /front-api/bill/create  5   749.12  103.79  240.38  149.0  60   \n",
       "2      162742  /front-api/bill/create  5   845.84  136.31  225.73  169.0  60   \n",
       "3      162808  /front-api/bill/create  9  1305.52   90.12  196.61  145.0  60   \n",
       "4      162943  /front-api/bill/create  3   568.89  138.45  232.02  189.0  60   \n",
       "\n",
       "                     8  \n",
       "0  2018-11-01 00:00:07  \n",
       "1  2018-11-01 00:01:07  \n",
       "2  2018-11-01 00:02:07  \n",
       "3  2018-11-01 00:03:07  \n",
       "4  2018-11-01 00:04:07  "
      ]
     },
     "execution_count": 8,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "df.head()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 9,
   "metadata": {},
   "outputs": [],
   "source": [
    "df.columns = ['id', 'api', 'count', 'res_time_sum', 'res_time_min','res_time_max','res_time_avg','interval','created_at']"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 10,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/html": [
       "<div>\n",
       "<style scoped>\n",
       "    .dataframe tbody tr th:only-of-type {\n",
       "        vertical-align: middle;\n",
       "    }\n",
       "\n",
       "    .dataframe tbody tr th {\n",
       "        vertical-align: top;\n",
       "    }\n",
       "\n",
       "    .dataframe thead th {\n",
       "        text-align: right;\n",
       "    }\n",
       "</style>\n",
       "<table border=\"1\" class=\"dataframe\">\n",
       "  <thead>\n",
       "    <tr style=\"text-align: right;\">\n",
       "      <th></th>\n",
       "      <th>id</th>\n",
       "      <th>api</th>\n",
       "      <th>count</th>\n",
       "      <th>res_time_sum</th>\n",
       "      <th>res_time_min</th>\n",
       "      <th>res_time_max</th>\n",
       "      <th>res_time_avg</th>\n",
       "      <th>interval</th>\n",
       "      <th>created_at</th>\n",
       "    </tr>\n",
       "  </thead>\n",
       "  <tbody>\n",
       "    <tr>\n",
       "      <th>0</th>\n",
       "      <td>2019162542</td>\n",
       "      <td>/front-api/bill/create</td>\n",
       "      <td>8</td>\n",
       "      <td>1057.31</td>\n",
       "      <td>88.75</td>\n",
       "      <td>177.72</td>\n",
       "      <td>132.0</td>\n",
       "      <td>60</td>\n",
       "      <td>2018-11-01 00:00:07</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>1</th>\n",
       "      <td>162644</td>\n",
       "      <td>/front-api/bill/create</td>\n",
       "      <td>5</td>\n",
       "      <td>749.12</td>\n",
       "      <td>103.79</td>\n",
       "      <td>240.38</td>\n",
       "      <td>149.0</td>\n",
       "      <td>60</td>\n",
       "      <td>2018-11-01 00:01:07</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2</th>\n",
       "      <td>162742</td>\n",
       "      <td>/front-api/bill/create</td>\n",
       "      <td>5</td>\n",
       "      <td>845.84</td>\n",
       "      <td>136.31</td>\n",
       "      <td>225.73</td>\n",
       "      <td>169.0</td>\n",
       "      <td>60</td>\n",
       "      <td>2018-11-01 00:02:07</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>3</th>\n",
       "      <td>162808</td>\n",
       "      <td>/front-api/bill/create</td>\n",
       "      <td>9</td>\n",
       "      <td>1305.52</td>\n",
       "      <td>90.12</td>\n",
       "      <td>196.61</td>\n",
       "      <td>145.0</td>\n",
       "      <td>60</td>\n",
       "      <td>2018-11-01 00:03:07</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>4</th>\n",
       "      <td>162943</td>\n",
       "      <td>/front-api/bill/create</td>\n",
       "      <td>3</td>\n",
       "      <td>568.89</td>\n",
       "      <td>138.45</td>\n",
       "      <td>232.02</td>\n",
       "      <td>189.0</td>\n",
       "      <td>60</td>\n",
       "      <td>2018-11-01 00:04:07</td>\n",
       "    </tr>\n",
       "  </tbody>\n",
       "</table>\n",
       "</div>"
      ],
      "text/plain": [
       "           id                     api  count  res_time_sum  res_time_min  \\\n",
       "0  2019162542  /front-api/bill/create      8       1057.31         88.75   \n",
       "1      162644  /front-api/bill/create      5        749.12        103.79   \n",
       "2      162742  /front-api/bill/create      5        845.84        136.31   \n",
       "3      162808  /front-api/bill/create      9       1305.52         90.12   \n",
       "4      162943  /front-api/bill/create      3        568.89        138.45   \n",
       "\n",
       "   res_time_max  res_time_avg  interval           created_at  \n",
       "0        177.72         132.0        60  2018-11-01 00:00:07  \n",
       "1        240.38         149.0        60  2018-11-01 00:01:07  \n",
       "2        225.73         169.0        60  2018-11-01 00:02:07  \n",
       "3        196.61         145.0        60  2018-11-01 00:03:07  \n",
       "4        232.02         189.0        60  2018-11-01 00:04:07  "
      ]
     },
     "execution_count": 10,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "df.head()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 12,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/html": [
       "<div>\n",
       "<style scoped>\n",
       "    .dataframe tbody tr th:only-of-type {\n",
       "        vertical-align: middle;\n",
       "    }\n",
       "\n",
       "    .dataframe tbody tr th {\n",
       "        vertical-align: top;\n",
       "    }\n",
       "\n",
       "    .dataframe thead th {\n",
       "        text-align: right;\n",
       "    }\n",
       "</style>\n",
       "<table border=\"1\" class=\"dataframe\">\n",
       "  <thead>\n",
       "    <tr style=\"text-align: right;\">\n",
       "      <th></th>\n",
       "      <th>id</th>\n",
       "      <th>api</th>\n",
       "      <th>count</th>\n",
       "      <th>res_time_sum</th>\n",
       "      <th>res_time_min</th>\n",
       "      <th>res_time_max</th>\n",
       "      <th>res_time_avg</th>\n",
       "      <th>interval</th>\n",
       "      <th>created_at</th>\n",
       "    </tr>\n",
       "  </thead>\n",
       "  <tbody>\n",
       "    <tr>\n",
       "      <th>24092</th>\n",
       "      <td>2308699</td>\n",
       "      <td>/front-api/bill/create</td>\n",
       "      <td>6</td>\n",
       "      <td>921.22</td>\n",
       "      <td>116.61</td>\n",
       "      <td>192.15</td>\n",
       "      <td>153.0</td>\n",
       "      <td>60</td>\n",
       "      <td>2018-11-28 23:39:04</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>159559</th>\n",
       "      <td>11902973</td>\n",
       "      <td>/front-api/bill/create</td>\n",
       "      <td>10</td>\n",
       "      <td>2682.59</td>\n",
       "      <td>124.95</td>\n",
       "      <td>564.72</td>\n",
       "      <td>268.0</td>\n",
       "      <td>60</td>\n",
       "      <td>2019-05-08 15:28:57</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>96483</th>\n",
       "      <td>7183095</td>\n",
       "      <td>/front-api/bill/create</td>\n",
       "      <td>7</td>\n",
       "      <td>1220.35</td>\n",
       "      <td>114.08</td>\n",
       "      <td>298.01</td>\n",
       "      <td>174.0</td>\n",
       "      <td>60</td>\n",
       "      <td>2019-02-24 16:26:36</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>12945</th>\n",
       "      <td>1316751</td>\n",
       "      <td>/front-api/bill/create</td>\n",
       "      <td>8</td>\n",
       "      <td>1242.00</td>\n",
       "      <td>86.26</td>\n",
       "      <td>308.39</td>\n",
       "      <td>155.0</td>\n",
       "      <td>60</td>\n",
       "      <td>2018-11-15 23:49:35</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>3725</th>\n",
       "      <td>503898</td>\n",
       "      <td>/front-api/bill/create</td>\n",
       "      <td>14</td>\n",
       "      <td>2237.77</td>\n",
       "      <td>102.99</td>\n",
       "      <td>231.42</td>\n",
       "      <td>159.0</td>\n",
       "      <td>60</td>\n",
       "      <td>2018-11-05 13:22:17</td>\n",
       "    </tr>\n",
       "  </tbody>\n",
       "</table>\n",
       "</div>"
      ],
      "text/plain": [
       "              id                     api  count  res_time_sum  res_time_min  \\\n",
       "24092    2308699  /front-api/bill/create      6        921.22        116.61   \n",
       "159559  11902973  /front-api/bill/create     10       2682.59        124.95   \n",
       "96483    7183095  /front-api/bill/create      7       1220.35        114.08   \n",
       "12945    1316751  /front-api/bill/create      8       1242.00         86.26   \n",
       "3725      503898  /front-api/bill/create     14       2237.77        102.99   \n",
       "\n",
       "        res_time_max  res_time_avg  interval           created_at  \n",
       "24092         192.15         153.0        60  2018-11-28 23:39:04  \n",
       "159559        564.72         268.0        60  2019-05-08 15:28:57  \n",
       "96483         298.01         174.0        60  2019-02-24 16:26:36  \n",
       "12945         308.39         155.0        60  2018-11-15 23:49:35  \n",
       "3725          231.42         159.0        60  2018-11-05 13:22:17  "
      ]
     },
     "execution_count": 12,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "df.sample(5)#随机采样，多次执行"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 14,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "(179496, 9)"
      ]
     },
     "execution_count": 14,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "df.shape"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 15,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "id                int64\n",
       "api              object\n",
       "count             int64\n",
       "res_time_sum    float64\n",
       "res_time_min    float64\n",
       "res_time_max    float64\n",
       "res_time_avg    float64\n",
       "interval          int64\n",
       "created_at       object\n",
       "dtype: object"
      ]
     },
     "execution_count": 15,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "df.dtypes"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 16,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "<class 'pandas.core.frame.DataFrame'>\n",
      "RangeIndex: 179496 entries, 0 to 179495\n",
      "Data columns (total 9 columns):\n",
      " #   Column        Non-Null Count   Dtype  \n",
      "---  ------        --------------   -----  \n",
      " 0   id            179496 non-null  int64  \n",
      " 1   api           179496 non-null  object \n",
      " 2   count         179496 non-null  int64  \n",
      " 3   res_time_sum  179496 non-null  float64\n",
      " 4   res_time_min  179496 non-null  float64\n",
      " 5   res_time_max  179496 non-null  float64\n",
      " 6   res_time_avg  179496 non-null  float64\n",
      " 7   interval      179496 non-null  int64  \n",
      " 8   created_at    179496 non-null  object \n",
      "dtypes: float64(4), int64(3), object(2)\n",
      "memory usage: 12.3+ MB\n"
     ]
    }
   ],
   "source": [
    "df.info()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 17,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "count                     179496\n",
       "unique                         1\n",
       "top       /front-api/bill/create\n",
       "freq                      179496\n",
       "Name: api, dtype: object"
      ]
     },
     "execution_count": 17,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "df['api'].describe()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 20,
   "metadata": {},
   "outputs": [],
   "source": [
    "df = df.drop('api',axis=1) #优化内存 指定axis 删除一列"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 21,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/html": [
       "<div>\n",
       "<style scoped>\n",
       "    .dataframe tbody tr th:only-of-type {\n",
       "        vertical-align: middle;\n",
       "    }\n",
       "\n",
       "    .dataframe tbody tr th {\n",
       "        vertical-align: top;\n",
       "    }\n",
       "\n",
       "    .dataframe thead th {\n",
       "        text-align: right;\n",
       "    }\n",
       "</style>\n",
       "<table border=\"1\" class=\"dataframe\">\n",
       "  <thead>\n",
       "    <tr style=\"text-align: right;\">\n",
       "      <th></th>\n",
       "      <th>id</th>\n",
       "      <th>count</th>\n",
       "      <th>res_time_sum</th>\n",
       "      <th>res_time_min</th>\n",
       "      <th>res_time_max</th>\n",
       "      <th>res_time_avg</th>\n",
       "      <th>interval</th>\n",
       "      <th>created_at</th>\n",
       "    </tr>\n",
       "  </thead>\n",
       "  <tbody>\n",
       "    <tr>\n",
       "      <th>0</th>\n",
       "      <td>2019162542</td>\n",
       "      <td>8</td>\n",
       "      <td>1057.31</td>\n",
       "      <td>88.75</td>\n",
       "      <td>177.72</td>\n",
       "      <td>132.0</td>\n",
       "      <td>60</td>\n",
       "      <td>2018-11-01 00:00:07</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>1</th>\n",
       "      <td>162644</td>\n",
       "      <td>5</td>\n",
       "      <td>749.12</td>\n",
       "      <td>103.79</td>\n",
       "      <td>240.38</td>\n",
       "      <td>149.0</td>\n",
       "      <td>60</td>\n",
       "      <td>2018-11-01 00:01:07</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2</th>\n",
       "      <td>162742</td>\n",
       "      <td>5</td>\n",
       "      <td>845.84</td>\n",
       "      <td>136.31</td>\n",
       "      <td>225.73</td>\n",
       "      <td>169.0</td>\n",
       "      <td>60</td>\n",
       "      <td>2018-11-01 00:02:07</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>3</th>\n",
       "      <td>162808</td>\n",
       "      <td>9</td>\n",
       "      <td>1305.52</td>\n",
       "      <td>90.12</td>\n",
       "      <td>196.61</td>\n",
       "      <td>145.0</td>\n",
       "      <td>60</td>\n",
       "      <td>2018-11-01 00:03:07</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>4</th>\n",
       "      <td>162943</td>\n",
       "      <td>3</td>\n",
       "      <td>568.89</td>\n",
       "      <td>138.45</td>\n",
       "      <td>232.02</td>\n",
       "      <td>189.0</td>\n",
       "      <td>60</td>\n",
       "      <td>2018-11-01 00:04:07</td>\n",
       "    </tr>\n",
       "  </tbody>\n",
       "</table>\n",
       "</div>"
      ],
      "text/plain": [
       "           id  count  res_time_sum  res_time_min  res_time_max  res_time_avg  \\\n",
       "0  2019162542      8       1057.31         88.75        177.72         132.0   \n",
       "1      162644      5        749.12        103.79        240.38         149.0   \n",
       "2      162742      5        845.84        136.31        225.73         169.0   \n",
       "3      162808      9       1305.52         90.12        196.61         145.0   \n",
       "4      162943      3        568.89        138.45        232.02         189.0   \n",
       "\n",
       "   interval           created_at  \n",
       "0        60  2018-11-01 00:00:07  \n",
       "1        60  2018-11-01 00:01:07  \n",
       "2        60  2018-11-01 00:02:07  \n",
       "3        60  2018-11-01 00:03:07  \n",
       "4        60  2018-11-01 00:04:07  "
      ]
     },
     "execution_count": 21,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "df.head()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 22,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "count                  179496\n",
       "unique                 179496\n",
       "top       2019-05-21 15:08:12\n",
       "freq                        1\n",
       "Name: created_at, dtype: object"
      ]
     },
     "execution_count": 22,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "df['created_at'].describe()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 23,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "RangeIndex(start=0, stop=179496, step=1)"
      ]
     },
     "execution_count": 23,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "df.index #当前索引"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 24,
   "metadata": {},
   "outputs": [],
   "source": [
    "df.index = df['created_at']"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 25,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/html": [
       "<div>\n",
       "<style scoped>\n",
       "    .dataframe tbody tr th:only-of-type {\n",
       "        vertical-align: middle;\n",
       "    }\n",
       "\n",
       "    .dataframe tbody tr th {\n",
       "        vertical-align: top;\n",
       "    }\n",
       "\n",
       "    .dataframe thead th {\n",
       "        text-align: right;\n",
       "    }\n",
       "</style>\n",
       "<table border=\"1\" class=\"dataframe\">\n",
       "  <thead>\n",
       "    <tr style=\"text-align: right;\">\n",
       "      <th></th>\n",
       "      <th>id</th>\n",
       "      <th>count</th>\n",
       "      <th>res_time_sum</th>\n",
       "      <th>res_time_min</th>\n",
       "      <th>res_time_max</th>\n",
       "      <th>res_time_avg</th>\n",
       "      <th>interval</th>\n",
       "      <th>created_at</th>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>created_at</th>\n",
       "      <th></th>\n",
       "      <th></th>\n",
       "      <th></th>\n",
       "      <th></th>\n",
       "      <th></th>\n",
       "      <th></th>\n",
       "      <th></th>\n",
       "      <th></th>\n",
       "    </tr>\n",
       "  </thead>\n",
       "  <tbody>\n",
       "    <tr>\n",
       "      <th>2018-11-01 00:00:07</th>\n",
       "      <td>2019162542</td>\n",
       "      <td>8</td>\n",
       "      <td>1057.31</td>\n",
       "      <td>88.75</td>\n",
       "      <td>177.72</td>\n",
       "      <td>132.0</td>\n",
       "      <td>60</td>\n",
       "      <td>2018-11-01 00:00:07</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2018-11-01 00:01:07</th>\n",
       "      <td>162644</td>\n",
       "      <td>5</td>\n",
       "      <td>749.12</td>\n",
       "      <td>103.79</td>\n",
       "      <td>240.38</td>\n",
       "      <td>149.0</td>\n",
       "      <td>60</td>\n",
       "      <td>2018-11-01 00:01:07</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2018-11-01 00:02:07</th>\n",
       "      <td>162742</td>\n",
       "      <td>5</td>\n",
       "      <td>845.84</td>\n",
       "      <td>136.31</td>\n",
       "      <td>225.73</td>\n",
       "      <td>169.0</td>\n",
       "      <td>60</td>\n",
       "      <td>2018-11-01 00:02:07</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2018-11-01 00:03:07</th>\n",
       "      <td>162808</td>\n",
       "      <td>9</td>\n",
       "      <td>1305.52</td>\n",
       "      <td>90.12</td>\n",
       "      <td>196.61</td>\n",
       "      <td>145.0</td>\n",
       "      <td>60</td>\n",
       "      <td>2018-11-01 00:03:07</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2018-11-01 00:04:07</th>\n",
       "      <td>162943</td>\n",
       "      <td>3</td>\n",
       "      <td>568.89</td>\n",
       "      <td>138.45</td>\n",
       "      <td>232.02</td>\n",
       "      <td>189.0</td>\n",
       "      <td>60</td>\n",
       "      <td>2018-11-01 00:04:07</td>\n",
       "    </tr>\n",
       "  </tbody>\n",
       "</table>\n",
       "</div>"
      ],
      "text/plain": [
       "                             id  count  res_time_sum  res_time_min  \\\n",
       "created_at                                                           \n",
       "2018-11-01 00:00:07  2019162542      8       1057.31         88.75   \n",
       "2018-11-01 00:01:07      162644      5        749.12        103.79   \n",
       "2018-11-01 00:02:07      162742      5        845.84        136.31   \n",
       "2018-11-01 00:03:07      162808      9       1305.52         90.12   \n",
       "2018-11-01 00:04:07      162943      3        568.89        138.45   \n",
       "\n",
       "                     res_time_max  res_time_avg  interval           created_at  \n",
       "created_at                                                                      \n",
       "2018-11-01 00:00:07        177.72         132.0        60  2018-11-01 00:00:07  \n",
       "2018-11-01 00:01:07        240.38         149.0        60  2018-11-01 00:01:07  \n",
       "2018-11-01 00:02:07        225.73         169.0        60  2018-11-01 00:02:07  \n",
       "2018-11-01 00:03:07        196.61         145.0        60  2018-11-01 00:03:07  \n",
       "2018-11-01 00:04:07        232.02         189.0        60  2018-11-01 00:04:07  "
      ]
     },
     "execution_count": 25,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "df.head()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 26,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "<class 'pandas.core.frame.DataFrame'>\n",
      "Index: 179496 entries, 2018-11-01 00:00:07 to 2019-05-30 23:10:21\n",
      "Data columns (total 8 columns):\n",
      " #   Column        Non-Null Count   Dtype  \n",
      "---  ------        --------------   -----  \n",
      " 0   id            179496 non-null  int64  \n",
      " 1   count         179496 non-null  int64  \n",
      " 2   res_time_sum  179496 non-null  float64\n",
      " 3   res_time_min  179496 non-null  float64\n",
      " 4   res_time_max  179496 non-null  float64\n",
      " 5   res_time_avg  179496 non-null  float64\n",
      " 6   interval      179496 non-null  int64  \n",
      " 7   created_at    179496 non-null  object \n",
      "dtypes: float64(4), int64(3), object(1)\n",
      "memory usage: 12.3+ MB\n"
     ]
    }
   ],
   "source": [
    "df.info()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 27,
   "metadata": {},
   "outputs": [],
   "source": [
    "df.index = pd.to_datetime(df.created_at)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 28,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "DatetimeIndex(['2018-11-01 00:00:07', '2018-11-01 00:01:07',\n",
       "               '2018-11-01 00:02:07', '2018-11-01 00:03:07',\n",
       "               '2018-11-01 00:04:07', '2018-11-01 00:05:07',\n",
       "               '2018-11-01 00:06:07', '2018-11-01 00:07:07',\n",
       "               '2018-11-01 00:08:07', '2018-11-01 00:09:07',\n",
       "               ...\n",
       "               '2019-05-30 23:01:21', '2019-05-30 23:02:21',\n",
       "               '2019-05-30 23:03:21', '2019-05-30 23:04:21',\n",
       "               '2019-05-30 23:05:21', '2019-05-30 23:06:21',\n",
       "               '2019-05-30 23:07:21', '2019-05-30 23:08:21',\n",
       "               '2019-05-30 23:09:21', '2019-05-30 23:10:21'],\n",
       "              dtype='datetime64[ns]', name='created_at', length=179496, freq=None)"
      ]
     },
     "execution_count": 28,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "df.index"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 29,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/html": [
       "<div>\n",
       "<style scoped>\n",
       "    .dataframe tbody tr th:only-of-type {\n",
       "        vertical-align: middle;\n",
       "    }\n",
       "\n",
       "    .dataframe tbody tr th {\n",
       "        vertical-align: top;\n",
       "    }\n",
       "\n",
       "    .dataframe thead th {\n",
       "        text-align: right;\n",
       "    }\n",
       "</style>\n",
       "<table border=\"1\" class=\"dataframe\">\n",
       "  <thead>\n",
       "    <tr style=\"text-align: right;\">\n",
       "      <th></th>\n",
       "      <th>id</th>\n",
       "      <th>count</th>\n",
       "      <th>res_time_sum</th>\n",
       "      <th>res_time_min</th>\n",
       "      <th>res_time_max</th>\n",
       "      <th>res_time_avg</th>\n",
       "      <th>interval</th>\n",
       "      <th>created_at</th>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>created_at</th>\n",
       "      <th></th>\n",
       "      <th></th>\n",
       "      <th></th>\n",
       "      <th></th>\n",
       "      <th></th>\n",
       "      <th></th>\n",
       "      <th></th>\n",
       "      <th></th>\n",
       "    </tr>\n",
       "  </thead>\n",
       "  <tbody>\n",
       "    <tr>\n",
       "      <th>2019-05-01 00:00:48</th>\n",
       "      <td>11406128</td>\n",
       "      <td>6</td>\n",
       "      <td>2105.08</td>\n",
       "      <td>125.74</td>\n",
       "      <td>992.46</td>\n",
       "      <td>350.0</td>\n",
       "      <td>60</td>\n",
       "      <td>2019-05-01 00:00:48</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2019-05-01 00:01:48</th>\n",
       "      <td>11406236</td>\n",
       "      <td>7</td>\n",
       "      <td>2579.11</td>\n",
       "      <td>76.55</td>\n",
       "      <td>987.47</td>\n",
       "      <td>368.0</td>\n",
       "      <td>60</td>\n",
       "      <td>2019-05-01 00:01:48</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2019-05-01 00:02:48</th>\n",
       "      <td>11406347</td>\n",
       "      <td>7</td>\n",
       "      <td>1277.79</td>\n",
       "      <td>109.65</td>\n",
       "      <td>236.73</td>\n",
       "      <td>182.0</td>\n",
       "      <td>60</td>\n",
       "      <td>2019-05-01 00:02:48</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2019-05-01 00:03:48</th>\n",
       "      <td>11406446</td>\n",
       "      <td>7</td>\n",
       "      <td>2137.20</td>\n",
       "      <td>131.55</td>\n",
       "      <td>920.52</td>\n",
       "      <td>305.0</td>\n",
       "      <td>60</td>\n",
       "      <td>2019-05-01 00:03:48</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2019-05-01 00:04:48</th>\n",
       "      <td>11406488</td>\n",
       "      <td>13</td>\n",
       "      <td>2948.70</td>\n",
       "      <td>86.42</td>\n",
       "      <td>491.31</td>\n",
       "      <td>226.0</td>\n",
       "      <td>60</td>\n",
       "      <td>2019-05-01 00:04:48</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>...</th>\n",
       "      <td>...</td>\n",
       "      <td>...</td>\n",
       "      <td>...</td>\n",
       "      <td>...</td>\n",
       "      <td>...</td>\n",
       "      <td>...</td>\n",
       "      <td>...</td>\n",
       "      <td>...</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2019-05-01 23:55:49</th>\n",
       "      <td>11475363</td>\n",
       "      <td>6</td>\n",
       "      <td>1083.97</td>\n",
       "      <td>70.85</td>\n",
       "      <td>262.22</td>\n",
       "      <td>180.0</td>\n",
       "      <td>60</td>\n",
       "      <td>2019-05-01 23:55:49</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2019-05-01 23:56:49</th>\n",
       "      <td>11475483</td>\n",
       "      <td>4</td>\n",
       "      <td>840.00</td>\n",
       "      <td>117.31</td>\n",
       "      <td>382.63</td>\n",
       "      <td>210.0</td>\n",
       "      <td>60</td>\n",
       "      <td>2019-05-01 23:56:49</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2019-05-01 23:57:49</th>\n",
       "      <td>11475550</td>\n",
       "      <td>2</td>\n",
       "      <td>295.51</td>\n",
       "      <td>101.71</td>\n",
       "      <td>193.80</td>\n",
       "      <td>147.0</td>\n",
       "      <td>60</td>\n",
       "      <td>2019-05-01 23:57:49</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2019-05-01 23:58:49</th>\n",
       "      <td>11475597</td>\n",
       "      <td>2</td>\n",
       "      <td>431.99</td>\n",
       "      <td>84.43</td>\n",
       "      <td>347.56</td>\n",
       "      <td>215.0</td>\n",
       "      <td>60</td>\n",
       "      <td>2019-05-01 23:58:49</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2019-05-01 23:59:49</th>\n",
       "      <td>11475664</td>\n",
       "      <td>3</td>\n",
       "      <td>428.84</td>\n",
       "      <td>103.58</td>\n",
       "      <td>206.57</td>\n",
       "      <td>142.0</td>\n",
       "      <td>60</td>\n",
       "      <td>2019-05-01 23:59:49</td>\n",
       "    </tr>\n",
       "  </tbody>\n",
       "</table>\n",
       "<p>884 rows × 8 columns</p>\n",
       "</div>"
      ],
      "text/plain": [
       "                           id  count  res_time_sum  res_time_min  \\\n",
       "created_at                                                         \n",
       "2019-05-01 00:00:48  11406128      6       2105.08        125.74   \n",
       "2019-05-01 00:01:48  11406236      7       2579.11         76.55   \n",
       "2019-05-01 00:02:48  11406347      7       1277.79        109.65   \n",
       "2019-05-01 00:03:48  11406446      7       2137.20        131.55   \n",
       "2019-05-01 00:04:48  11406488     13       2948.70         86.42   \n",
       "...                       ...    ...           ...           ...   \n",
       "2019-05-01 23:55:49  11475363      6       1083.97         70.85   \n",
       "2019-05-01 23:56:49  11475483      4        840.00        117.31   \n",
       "2019-05-01 23:57:49  11475550      2        295.51        101.71   \n",
       "2019-05-01 23:58:49  11475597      2        431.99         84.43   \n",
       "2019-05-01 23:59:49  11475664      3        428.84        103.58   \n",
       "\n",
       "                     res_time_max  res_time_avg  interval           created_at  \n",
       "created_at                                                                      \n",
       "2019-05-01 00:00:48        992.46         350.0        60  2019-05-01 00:00:48  \n",
       "2019-05-01 00:01:48        987.47         368.0        60  2019-05-01 00:01:48  \n",
       "2019-05-01 00:02:48        236.73         182.0        60  2019-05-01 00:02:48  \n",
       "2019-05-01 00:03:48        920.52         305.0        60  2019-05-01 00:03:48  \n",
       "2019-05-01 00:04:48        491.31         226.0        60  2019-05-01 00:04:48  \n",
       "...                           ...           ...       ...                  ...  \n",
       "2019-05-01 23:55:49        262.22         180.0        60  2019-05-01 23:55:49  \n",
       "2019-05-01 23:56:49        382.63         210.0        60  2019-05-01 23:56:49  \n",
       "2019-05-01 23:57:49        193.80         147.0        60  2019-05-01 23:57:49  \n",
       "2019-05-01 23:58:49        347.56         215.0        60  2019-05-01 23:58:49  \n",
       "2019-05-01 23:59:49        206.57         142.0        60  2019-05-01 23:59:49  \n",
       "\n",
       "[884 rows x 8 columns]"
      ]
     },
     "execution_count": 29,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "df['2019-5-1']"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 30,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "count    179496.0\n",
       "mean         60.0\n",
       "std           0.0\n",
       "min          60.0\n",
       "25%          60.0\n",
       "50%          60.0\n",
       "75%          60.0\n",
       "max          60.0\n",
       "Name: interval, dtype: float64"
      ]
     },
     "execution_count": 30,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "df.interval.describe()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 31,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "array([60])"
      ]
     },
     "execution_count": 31,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "df.interval.unique()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 33,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/html": [
       "<div>\n",
       "<style scoped>\n",
       "    .dataframe tbody tr th:only-of-type {\n",
       "        vertical-align: middle;\n",
       "    }\n",
       "\n",
       "    .dataframe tbody tr th {\n",
       "        vertical-align: top;\n",
       "    }\n",
       "\n",
       "    .dataframe thead th {\n",
       "        text-align: right;\n",
       "    }\n",
       "</style>\n",
       "<table border=\"1\" class=\"dataframe\">\n",
       "  <thead>\n",
       "    <tr style=\"text-align: right;\">\n",
       "      <th></th>\n",
       "      <th>count</th>\n",
       "      <th>res_time_sum</th>\n",
       "      <th>res_time_min</th>\n",
       "      <th>res_time_max</th>\n",
       "      <th>res_time_avg</th>\n",
       "      <th>created_at</th>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>created_at</th>\n",
       "      <th></th>\n",
       "      <th></th>\n",
       "      <th></th>\n",
       "      <th></th>\n",
       "      <th></th>\n",
       "      <th></th>\n",
       "    </tr>\n",
       "  </thead>\n",
       "  <tbody>\n",
       "    <tr>\n",
       "      <th>2018-11-01 00:00:07</th>\n",
       "      <td>8</td>\n",
       "      <td>1057.31</td>\n",
       "      <td>88.75</td>\n",
       "      <td>177.72</td>\n",
       "      <td>132.0</td>\n",
       "      <td>2018-11-01 00:00:07</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2018-11-01 00:01:07</th>\n",
       "      <td>5</td>\n",
       "      <td>749.12</td>\n",
       "      <td>103.79</td>\n",
       "      <td>240.38</td>\n",
       "      <td>149.0</td>\n",
       "      <td>2018-11-01 00:01:07</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2018-11-01 00:02:07</th>\n",
       "      <td>5</td>\n",
       "      <td>845.84</td>\n",
       "      <td>136.31</td>\n",
       "      <td>225.73</td>\n",
       "      <td>169.0</td>\n",
       "      <td>2018-11-01 00:02:07</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2018-11-01 00:03:07</th>\n",
       "      <td>9</td>\n",
       "      <td>1305.52</td>\n",
       "      <td>90.12</td>\n",
       "      <td>196.61</td>\n",
       "      <td>145.0</td>\n",
       "      <td>2018-11-01 00:03:07</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2018-11-01 00:04:07</th>\n",
       "      <td>3</td>\n",
       "      <td>568.89</td>\n",
       "      <td>138.45</td>\n",
       "      <td>232.02</td>\n",
       "      <td>189.0</td>\n",
       "      <td>2018-11-01 00:04:07</td>\n",
       "    </tr>\n",
       "  </tbody>\n",
       "</table>\n",
       "</div>"
      ],
      "text/plain": [
       "                     count  res_time_sum  res_time_min  res_time_max  \\\n",
       "created_at                                                             \n",
       "2018-11-01 00:00:07      8       1057.31         88.75        177.72   \n",
       "2018-11-01 00:01:07      5        749.12        103.79        240.38   \n",
       "2018-11-01 00:02:07      5        845.84        136.31        225.73   \n",
       "2018-11-01 00:03:07      9       1305.52         90.12        196.61   \n",
       "2018-11-01 00:04:07      3        568.89        138.45        232.02   \n",
       "\n",
       "                     res_time_avg           created_at  \n",
       "created_at                                              \n",
       "2018-11-01 00:00:07         132.0  2018-11-01 00:00:07  \n",
       "2018-11-01 00:01:07         149.0  2018-11-01 00:01:07  \n",
       "2018-11-01 00:02:07         169.0  2018-11-01 00:02:07  \n",
       "2018-11-01 00:03:07         145.0  2018-11-01 00:03:07  \n",
       "2018-11-01 00:04:07         189.0  2018-11-01 00:04:07  "
      ]
     },
     "execution_count": 33,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "df = df.drop(['id','interval'],axis=1)\n",
    "df.head()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 34,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "<class 'pandas.core.frame.DataFrame'>\n",
      "DatetimeIndex: 179496 entries, 2018-11-01 00:00:07 to 2019-05-30 23:10:21\n",
      "Data columns (total 6 columns):\n",
      " #   Column        Non-Null Count   Dtype  \n",
      "---  ------        --------------   -----  \n",
      " 0   count         179496 non-null  int64  \n",
      " 1   res_time_sum  179496 non-null  float64\n",
      " 2   res_time_min  179496 non-null  float64\n",
      " 3   res_time_max  179496 non-null  float64\n",
      " 4   res_time_avg  179496 non-null  float64\n",
      " 5   created_at    179496 non-null  object \n",
      "dtypes: float64(4), int64(1), object(1)\n",
      "memory usage: 9.6+ MB\n"
     ]
    }
   ],
   "source": [
    "df.info()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 37,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/html": [
       "<div>\n",
       "<style scoped>\n",
       "    .dataframe tbody tr th:only-of-type {\n",
       "        vertical-align: middle;\n",
       "    }\n",
       "\n",
       "    .dataframe tbody tr th {\n",
       "        vertical-align: top;\n",
       "    }\n",
       "\n",
       "    .dataframe thead th {\n",
       "        text-align: right;\n",
       "    }\n",
       "</style>\n",
       "<table border=\"1\" class=\"dataframe\">\n",
       "  <thead>\n",
       "    <tr style=\"text-align: right;\">\n",
       "      <th></th>\n",
       "      <th>count</th>\n",
       "      <th>res_time_sum</th>\n",
       "      <th>res_time_min</th>\n",
       "      <th>res_time_max</th>\n",
       "      <th>res_time_avg</th>\n",
       "    </tr>\n",
       "  </thead>\n",
       "  <tbody>\n",
       "    <tr>\n",
       "      <th>count</th>\n",
       "      <td>179496.000000</td>\n",
       "      <td>179496.000000</td>\n",
       "      <td>179496.000000</td>\n",
       "      <td>179496.000000</td>\n",
       "      <td>179496.000000</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>mean</th>\n",
       "      <td>7.175909</td>\n",
       "      <td>1393.177832</td>\n",
       "      <td>108.419626</td>\n",
       "      <td>359.880374</td>\n",
       "      <td>187.812208</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>std</th>\n",
       "      <td>4.325160</td>\n",
       "      <td>1499.486073</td>\n",
       "      <td>79.640693</td>\n",
       "      <td>638.919827</td>\n",
       "      <td>224.464813</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>min</th>\n",
       "      <td>1.000000</td>\n",
       "      <td>36.550000</td>\n",
       "      <td>3.210000</td>\n",
       "      <td>36.550000</td>\n",
       "      <td>36.000000</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>25%</th>\n",
       "      <td>4.000000</td>\n",
       "      <td>607.707500</td>\n",
       "      <td>83.410000</td>\n",
       "      <td>198.280000</td>\n",
       "      <td>144.000000</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>50%</th>\n",
       "      <td>7.000000</td>\n",
       "      <td>1154.905000</td>\n",
       "      <td>97.120000</td>\n",
       "      <td>256.090000</td>\n",
       "      <td>167.000000</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>75%</th>\n",
       "      <td>10.000000</td>\n",
       "      <td>1834.117500</td>\n",
       "      <td>116.990000</td>\n",
       "      <td>374.410000</td>\n",
       "      <td>202.000000</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>max</th>\n",
       "      <td>31.000000</td>\n",
       "      <td>142650.550000</td>\n",
       "      <td>18896.640000</td>\n",
       "      <td>142468.270000</td>\n",
       "      <td>71325.000000</td>\n",
       "    </tr>\n",
       "  </tbody>\n",
       "</table>\n",
       "</div>"
      ],
      "text/plain": [
       "               count   res_time_sum   res_time_min   res_time_max  \\\n",
       "count  179496.000000  179496.000000  179496.000000  179496.000000   \n",
       "mean        7.175909    1393.177832     108.419626     359.880374   \n",
       "std         4.325160    1499.486073      79.640693     638.919827   \n",
       "min         1.000000      36.550000       3.210000      36.550000   \n",
       "25%         4.000000     607.707500      83.410000     198.280000   \n",
       "50%         7.000000    1154.905000      97.120000     256.090000   \n",
       "75%        10.000000    1834.117500     116.990000     374.410000   \n",
       "max        31.000000  142650.550000   18896.640000  142468.270000   \n",
       "\n",
       "        res_time_avg  \n",
       "count  179496.000000  \n",
       "mean      187.812208  \n",
       "std       224.464813  \n",
       "min        36.000000  \n",
       "25%       144.000000  \n",
       "50%       167.000000  \n",
       "75%       202.000000  \n",
       "max     71325.000000  "
      ]
     },
     "execution_count": 37,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "df.describe()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 39,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "iVBORw0KGgoAAAANSUhEUgAAAYMAAAD4CAYAAAAO9oqkAAAABHNCSVQICAgIfAhkiAAAAAlwSFlzAAALEgAACxIB0t1+/AAAADh0RVh0U29mdHdhcmUAbWF0cGxvdGxpYiB2ZXJzaW9uMy4yLjEsIGh0dHA6Ly9tYXRwbG90bGliLm9yZy+j8jraAAAQ30lEQVR4nO3df4zkdX3H8efLA/RyagEhG3pHe7ReatBrUS+A0TQbiHBA06MJEqiVw1CviZBgekk9/Qd/kWBTxJIozbVcOIx6En+Ui2DoBdlYk/JTkPMglBWPcBfkoscPVyN29d0/5nPt3LJ7Owt7OzvD85FM9vt9fz8z83nnuzuvne98ZyZVhSTp1e01/Z6AJKn/DANJkmEgSTIMJEkYBpIk4Ih+T+DlOu6442rlypUH1X75y1+ybNmy/kxoHg1LH2Avi9Ww9DIsfcDC9PLAAw/8rKqOn27bwIbBypUruf/++w+qjY2NMTo62p8JzaNh6QPsZbEall6GpQ9YmF6SPDnTNg8TSZIMA0mSYSBJwjCQJGEYSJIwDCRJGAaSJAwDSRKGgSSJAX4HsuZm5abb+nK/N60djo8KkIadYbCAen1A3rh6kkv79OAt6dXJw0SSJMNAkmQYSJIwDCRJGAaSJAwDSRKGgSSJV+n7DPr1BixJWqx8ZiBJMgwkSYaBJAnDQJLEHMIgyZIkDyb5dls/Kck9ScaTfC3JUa3+2rY+3rav7LqNj7X6Y0nO7qqvbbXxJJvmrz1JUi/m8szgSuDRrvXPAtdV1ZuBZ4HLWv0y4NlWv66NI8nJwEXAW4G1wBdbwCwBvgCcA5wMXNzGSpIWSE9hkGQFcB7wb209wBnA19uQrcD5bXldW6dtP7ONXwdsq6oXq+onwDhwaruMV9UTVfUbYFsbK0laIL2+z+DzwD8Ab2jrbwKeq6rJtr4HWN6WlwNPAVTVZJLn2/jlwN1dt9l9naem1E+bbhJJNgAbAEZGRhgbGzto+8TExEtq09m4enLWMf00snTxz7FXve6TQWAvi8+w9AH972XWMEjyF8C+qnogyejhn9LMqmozsBlgzZo1NTp68HTGxsaYWpvOYv/imI2rJ7l253C8H/Cmtct62ieDoNffr0EwLL0MSx/Q/156ecR5N/CXSc4FXge8Efhn4OgkR7RnByuAvW38XuBEYE+SI4DfA37eVT+g+zoz1SVJC2DW1wyq6mNVtaKqVtJ5Afi7VfV+4C7ggjZsPXBrW97e1mnbv1tV1eoXtbONTgJWAfcC9wGr2tlJR7X72D4v3UmSevJKjkV8FNiW5DPAg8CNrX4j8KUk48B+Og/uVNWuJLcAjwCTwOVV9VuAJFcAdwBLgC1VtesVzEuSNEdzCoOqGgPG2vITdM4Emjrm18D7Zrj+1cDV09RvB26fy1wkSfPHdyBLkgwDSZJhIEnCMJAkYRhIkjAMJEkYBpIkDANJEoaBJAnDQJKEYSBJwjCQJGEYSJIwDCRJGAaSJAwDSRKGgSQJw0CShGEgScIwkCRhGEiSMAwkSRgGkiQMA0kShoEkCcNAkoRhIEnCMJAkYRhIkjAMJEkYBpIkDANJEoaBJAnDQJKEYSBJwjCQJGEYSJIwDCRJ9BAGSV6X5N4kP0yyK8knW/2kJPckGU/ytSRHtfpr2/p4276y67Y+1uqPJTm7q7621caTbJr/NiVJh9LLM4MXgTOq6s+AU4C1SU4HPgtcV1VvBp4FLmvjLwOebfXr2jiSnAxcBLwVWAt8McmSJEuALwDnACcDF7exkqQFMmsYVMdEWz2yXQo4A/h6q28Fzm/L69o6bfuZSdLq26rqxar6CTAOnNou41X1RFX9BtjWxkqSFsgRvQxq/70/ALyZzn/xPwaeq6rJNmQPsLwtLweeAqiqySTPA29q9bu7brb7Ok9NqZ82wzw2ABsARkZGGBsbO2j7xMTES2rT2bh6ctYx/TSydPHPsVe97pNBYC+Lz7D0Af3vpacwqKrfAqckORr4FvCWwzqrmeexGdgMsGbNmhodHT1o+9jYGFNr07l0022HYXbzZ+PqSa7d2dOuWfRuWrusp30yCHr9/RoEw9LLsPQB/e9lTmcTVdVzwF3Au4Cjkxx4xFoB7G3Le4ETAdr23wN+3l2fcp2Z6pKkBTLrv59Jjgf+p6qeS7IUeC+dF4XvAi6gc4x/PXBru8r2tv5fbft3q6qSbAe+kuRzwO8Dq4B7gQCrkpxEJwQuAv56/lpUP+3c+3zfnontvua8vtyvNIh6ORZxArC1vW7wGuCWqvp2kkeAbUk+AzwI3NjG3wh8Kck4sJ/OgztVtSvJLcAjwCRweTv8RJIrgDuAJcCWqto1bx1KkmY1axhU1cPA26epP0HnTKCp9V8D75vhtq4Grp6mfjtwew/zlSQdBr4DWZJkGEiSDANJEoaBJAnDQJKEYSBJwjCQJGEYSJIwDCRJGAaSJAwDSRKGgSQJw0CShGEgScIwkCRhGEiSMAwkSRgGkiQMA0kShoEkCcNAkoRhIEnCMJAkYRhIkjAMJEkYBpIkDANJEoaBJAnDQJKEYSBJwjCQJGEYSJIwDCRJGAaSJAwDSRKGgSQJw0CShGEgScIwkCTRQxgkOTHJXUkeSbIryZWtfmySHUkebz+PafUkuT7JeJKHk7yj67bWt/GPJ1nfVX9nkp3tOtcnyeFoVpI0vV6eGUwCG6vqZOB04PIkJwObgDurahVwZ1sHOAdY1S4bgBugEx7AVcBpwKnAVQcCpI35UNf11r7y1iRJvZo1DKrq6ar6QVv+BfAosBxYB2xtw7YC57fldcDN1XE3cHSSE4CzgR1Vtb+qngV2AGvbtjdW1d1VVcDNXbclSVoAR8xlcJKVwNuBe4CRqnq6bfopMNKWlwNPdV1tT6sdqr5nmvp097+BzrMNRkZGGBsbO2j7xMTES2rT2bh6ctYx/TSydPHPsVf97KWX34W56PX3axAMSy/D0gf0v5eewyDJ64FvAB+pqhe6D+tXVSWpwzC/g1TVZmAzwJo1a2p0dPSg7WNjY0ytTefSTbcdhtnNn42rJ7l255xyetHqZy+73z86r7fX6+/XIBiWXoalD+h/Lz2dTZTkSDpB8OWq+mYrP9MO8dB+7mv1vcCJXVdf0WqHqq+Ypi5JWiC9nE0U4Ebg0ar6XNem7cCBM4LWA7d21S9pZxWdDjzfDifdAZyV5Jj2wvFZwB1t2wtJTm/3dUnXbUmSFkAvz9/fDXwA2JnkoVb7OHANcEuSy4AngQvbttuBc4Fx4FfABwGqan+STwP3tXGfqqr9bfnDwE3AUuA77SJJWiCzhkFVfR+Y6bz/M6cZX8DlM9zWFmDLNPX7gbfNNhdJ0uHhO5AlSYaBJMkwkCRhGEiSMAwkSRgGkiQMA0kShoEkCcNAkoRhIEnCMJAkYRhIkjAMJEkYBpIkDANJEoaBJAnDQJKEYSBJwjCQJGEYSJIwDCRJGAaSJOCIfk9AOlxWbrptXm9v4+pJLu3hNndfc9683q+0EHxmIEkyDCRJhoEkCcNAkoRhIEnCMJAkYRhIkjAMJEkYBpIkDANJEoaBJAnDQJKEYSBJwjCQJGEYSJLoIQySbEmyL8mPumrHJtmR5PH285hWT5Lrk4wneTjJO7qus76NfzzJ+q76O5PsbNe5Pknmu0lJ0qH18szgJmDtlNom4M6qWgXc2dYBzgFWtcsG4AbohAdwFXAacCpw1YEAaWM+1HW9qfclSTrMZg2DqvoesH9KeR2wtS1vBc7vqt9cHXcDRyc5ATgb2FFV+6vqWWAHsLZte2NV3V1VBdzcdVuSpAXycr/2cqSqnm7LPwVG2vJy4KmucXta7VD1PdPUp5VkA51nHIyMjDA2NnbQ9omJiZfUprNx9eSsY/ppZOnin2OvXo299PI72G+9/q0sdsPSB/S/l1f8HchVVUlqPibTw31tBjYDrFmzpkZHRw/aPjY2xtTadHr5Htt+2rh6kmt3DsfXU78ae9n9/tHDP5lXqNe/lcVuWPqA/vfycs8meqYd4qH93Nfqe4ETu8ataLVD1VdMU5ckLaCXGwbbgQNnBK0Hbu2qX9LOKjodeL4dTroDOCvJMe2F47OAO9q2F5Kc3s4iuqTrtiRJC2TW57xJvgqMAscl2UPnrKBrgFuSXAY8CVzYht8OnAuMA78CPghQVfuTfBq4r437VFUdeFH6w3TOWFoKfKddJEkLaNYwqKqLZ9h05jRjC7h8htvZAmyZpn4/8LbZ5iFJOnx8B7IkyTCQJBkGkiQMA0kShoEkCcNAkoRhIEnCMJAkYRhIkjAMJEkYBpIkDANJEoaBJAnDQJKEYSBJwjCQJGEYSJLo4ZvOJM3Nyk239eV+d19zXl/uV8PBZwaSJMNAkmQYSJIwDCRJGAaSJAwDSRKGgSQJw0CShGEgScIwkCRhGEiSMAwkSRgGkiQMA0kShoEkCcNAkoRhIEnCbzqThsZcvmFt4+pJLp3Hb2TzW9YGn88MJEmGgSTJMJAksYjCIMnaJI8lGU+yqd/zkaRXk0XxAnKSJcAXgPcCe4D7kmyvqkf6OzNJvZjLi9fz6aa1y/pyv8NoUYQBcCowXlVPACTZBqwDDANJM9q59/l5PStqLobtDKpUVb/nQJILgLVV9bdt/QPAaVV1xZRxG4ANbfVPgMem3NRxwM8O83QXwrD0AfayWA1LL8PSByxML39YVcdPt2GxPDPoSVVtBjbPtD3J/VW1ZgGndFgMSx9gL4vVsPQyLH1A/3tZLC8g7wVO7Fpf0WqSpAWwWMLgPmBVkpOSHAVcBGzv85wk6VVjURwmqqrJJFcAdwBLgC1Vtetl3NSMh5AGzLD0AfayWA1LL8PSB/S5l0XxArIkqb8Wy2EiSVIfGQaSpOEIg2H6KIsku5PsTPJQkvv7PZ+5SLIlyb4kP+qqHZtkR5LH289j+jnHXs3QyyeS7G375qEk5/Zzjr1IcmKSu5I8kmRXkitbfeD2yyF6Gaj9kuR1Se5N8sPWxydb/aQk97THsa+1k2kWbl6D/ppB+yiL/6broyyAiwf1oyyS7AbWVNXAvZEmyZ8DE8DNVfW2VvtHYH9VXdOC+piq+mg/59mLGXr5BDBRVf/Uz7nNRZITgBOq6gdJ3gA8AJwPXMqA7ZdD9HIhA7RfkgRYVlUTSY4Evg9cCfw98M2q2pbkX4AfVtUNCzWvYXhm8H8fZVFVvwEOfJSFFlhVfQ/YP6W8DtjalrfS+eNd9GboZeBU1dNV9YO2/AvgUWA5A7hfDtHLQKmOibZ6ZLsUcAbw9VZf8H0yDGGwHHiqa30PA/gL0qWA/0jyQPv4jUE3UlVPt+WfAiP9nMw8uCLJw+0w0qI/tNItyUrg7cA9DPh+mdILDNh+SbIkyUPAPmAH8GPguaqabEMW/HFsGMJg2Lynqt4BnANc3g5XDIXqHJMc5OOSNwB/DJwCPA1c29/p9C7J64FvAB+pqhe6tw3afpmml4HbL1X126o6hc6nLZwKvKXPUxqKMBiqj7Koqr3t5z7gW3R+UQbZM+1Y74Fjvvv6PJ+XraqeaX/EvwP+lQHZN+249DeAL1fVN1t5IPfLdL0M6n4BqKrngLuAdwFHJznwRuAFfxwbhjAYmo+ySLKsvTBGkmXAWcCPDn2tRW87sL4trwdu7eNcXpEDD57NXzEA+6a9WHkj8GhVfa5r08Dtl5l6GbT9kuT4JEe35aV0Tn55lE4oXNCGLfg+GfiziQDaqWSf5/8/yuLqPk/pZUnyR3SeDUDno0K+Mki9JPkqMErno3ifAa4C/h24BfgD4Engwqpa9C/MztDLKJ1DEQXsBv6u67j7opTkPcB/AjuB37Xyx+kcax+o/XKIXi5mgPZLkj+l8wLxEjr/kN9SVZ9qf//bgGOBB4G/qaoXF2xewxAGkqRXZhgOE0mSXiHDQJJkGEiSDANJEoaBJAnDQJKEYSBJAv4XFyCzHah1rxcAAAAASUVORK5CYII=\n",
      "text/plain": [
       "<Figure size 432x288 with 1 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "df['count'].hist() #初步分析count，直方图\n",
    "plt.show()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 40,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 432x288 with 1 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "#表示接口调用发布情况 大部分都在10次以内 反映出每分钟调用的次数分布情况\n",
    "df['count'].hist(bins=30)\n",
    "plt.show()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 42,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 432x288 with 1 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "#切出一天的数据 绘制一天时段的接口调用情况\n",
    "df['2019-5-1']['count'].plot()\n",
    "plt.show()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 43,
   "metadata": {},
   "outputs": [],
   "source": [
    "# 凌晨时间无人访问 下午2，3点第一个访问高峰，晚上 8，9点，第二个访问高峰"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 44,
   "metadata": {},
   "outputs": [],
   "source": [
    "# 用count重采样，用一个小时进行采样，没那么多数据点了，图像比较平滑\n",
    "df2 = df['2019-5-1']"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 45,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/html": [
       "<div>\n",
       "<style scoped>\n",
       "    .dataframe tbody tr th:only-of-type {\n",
       "        vertical-align: middle;\n",
       "    }\n",
       "\n",
       "    .dataframe tbody tr th {\n",
       "        vertical-align: top;\n",
       "    }\n",
       "\n",
       "    .dataframe thead th {\n",
       "        text-align: right;\n",
       "    }\n",
       "</style>\n",
       "<table border=\"1\" class=\"dataframe\">\n",
       "  <thead>\n",
       "    <tr style=\"text-align: right;\">\n",
       "      <th></th>\n",
       "      <th>count</th>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>created_at</th>\n",
       "      <th></th>\n",
       "    </tr>\n",
       "  </thead>\n",
       "  <tbody>\n",
       "    <tr>\n",
       "      <th>2019-05-01 00:00:00</th>\n",
       "      <td>4.428571</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2019-05-01 01:00:00</th>\n",
       "      <td>2.272727</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2019-05-01 02:00:00</th>\n",
       "      <td>1.833333</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2019-05-01 03:00:00</th>\n",
       "      <td>NaN</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2019-05-01 04:00:00</th>\n",
       "      <td>NaN</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2019-05-01 05:00:00</th>\n",
       "      <td>2.000000</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2019-05-01 06:00:00</th>\n",
       "      <td>NaN</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2019-05-01 07:00:00</th>\n",
       "      <td>NaN</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2019-05-01 08:00:00</th>\n",
       "      <td>NaN</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2019-05-01 09:00:00</th>\n",
       "      <td>1.000000</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2019-05-01 10:00:00</th>\n",
       "      <td>1.400000</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2019-05-01 11:00:00</th>\n",
       "      <td>1.604651</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2019-05-01 12:00:00</th>\n",
       "      <td>3.298246</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2019-05-01 13:00:00</th>\n",
       "      <td>6.866667</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2019-05-01 14:00:00</th>\n",
       "      <td>10.483333</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2019-05-01 15:00:00</th>\n",
       "      <td>12.333333</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2019-05-01 16:00:00</th>\n",
       "      <td>9.916667</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2019-05-01 17:00:00</th>\n",
       "      <td>7.666667</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2019-05-01 18:00:00</th>\n",
       "      <td>6.783333</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2019-05-01 19:00:00</th>\n",
       "      <td>9.850000</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2019-05-01 20:00:00</th>\n",
       "      <td>11.000000</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2019-05-01 21:00:00</th>\n",
       "      <td>10.416667</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2019-05-01 22:00:00</th>\n",
       "      <td>8.000000</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2019-05-01 23:00:00</th>\n",
       "      <td>5.083333</td>\n",
       "    </tr>\n",
       "  </tbody>\n",
       "</table>\n",
       "</div>"
      ],
      "text/plain": [
       "                         count\n",
       "created_at                    \n",
       "2019-05-01 00:00:00   4.428571\n",
       "2019-05-01 01:00:00   2.272727\n",
       "2019-05-01 02:00:00   1.833333\n",
       "2019-05-01 03:00:00        NaN\n",
       "2019-05-01 04:00:00        NaN\n",
       "2019-05-01 05:00:00   2.000000\n",
       "2019-05-01 06:00:00        NaN\n",
       "2019-05-01 07:00:00        NaN\n",
       "2019-05-01 08:00:00        NaN\n",
       "2019-05-01 09:00:00   1.000000\n",
       "2019-05-01 10:00:00   1.400000\n",
       "2019-05-01 11:00:00   1.604651\n",
       "2019-05-01 12:00:00   3.298246\n",
       "2019-05-01 13:00:00   6.866667\n",
       "2019-05-01 14:00:00  10.483333\n",
       "2019-05-01 15:00:00  12.333333\n",
       "2019-05-01 16:00:00   9.916667\n",
       "2019-05-01 17:00:00   7.666667\n",
       "2019-05-01 18:00:00   6.783333\n",
       "2019-05-01 19:00:00   9.850000\n",
       "2019-05-01 20:00:00  11.000000\n",
       "2019-05-01 21:00:00  10.416667\n",
       "2019-05-01 22:00:00   8.000000\n",
       "2019-05-01 23:00:00   5.083333"
      ]
     },
     "execution_count": 45,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "df2 = df2[['count']].resample('1H').mean()\n",
    "df2"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 46,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 432x288 with 1 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "df2['count'].plot()\n",
    "plt.show()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 48,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "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yMDRGfhFREREWqTBmIiIiEiLNBgTERERaZEGYyIiIiIt0mBMREREpEUajImIiIi0qOx5xkRERER6zuwjLhzzz95zzO41VrJ42jMmIiIi0iINxkRERERapMGYiIiISIs0GBMRERFpkQZjIiIiIi3SYExERESkRRqMiYiIiLSoJ84zFulcICIiIiJV0p4xERERkRaVHoyZ2UQz+4WZXVBFQSIiIiKDpIo9Y+8Hbq0gR0RERGTglBqMmdnqwO7Ad6spR0RERGSwlN0z9jXgcGDRaD9gZvPMbIGZLVi4cGHJpxMRERHpL4UHY2b2euBhd7/+pX7O3ee7+5C7D82cObPo04mIiIj0pTJ7xrYB9jCze4BTgR3N7D8rqUpERERkQBQejLn7x919dXefDewL/Le7H1BZZSIiIiIDQOcZExEREWlRJWfgd/crgCuqyBIREREZJNozJiIiItIiDcZEREREWqTBmIiIiEiLKpkzJiLSi2YfceGYf/aeY3avsRIRkdFpz5iIiIhIizQYExEREWmRBmMiIiIiLdJgTERERKRFGoyJiIiItEiDMREREZEWaTAmIiIi0iINxkRERERapMGYiIiISIs0GBMRERFpkQZjIiIiIi3SYExERESkRYUvFG5mawAnAisDDsx3969XVVhVxnOhYNDFgkVERKRZhQdjwPPAh939BjObDlxvZpe5+68rqk1ERESk7xU+TOnuD7r7Dfn7PwO3AqtVVZiIiIjIIKhkzpiZzQY2A66rIk9ERERkUJQ5TAmAmU0DzgQ+4O5PjPD4PGAewKxZs8o+nQSgeXoiIiJjV2rPmJktQRqInezuZ430M+4+392H3H1o5syZZZ5OREREpO+U+TSlAd8DbnX3r1RXUhzaAyQiIiJlldkztg3wdmBHM7sx33arqC4RERGRgVB4z5i7Xw1YhbWIiIiIDJzSE/hFRMoYz+F+HeoXkX6kyyGJiIiItEh7xkTkJemDKiIi9dKeMREREZEWaTAmIiIi0iINxkRERERapMGYiIiISIs0gV+kD2iSvYhIXNozJiIiItIiDcZEREREWqTBmIiIiEiLNBgTERERaZEGYyIiIiIt0mBMREREpEUajImIiIi0SIMxERERkRaVGoyZ2a5m9hszu9PMjqiqKBEREZFBUXgwZmYTgW8BrwM2BPYzsw2rKkxERERkEJTZM7YlcKe7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\n",
      "text/plain": [
       "<Figure size 720x216 with 1 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "## 折线图和直方图，可以看到业务的高峰时段在什么地方，分不清具体时间，绘制柱状图\n",
    "plt.figure(figsize = (10,3)) #单位是英寸\n",
    "df2['count'].plot(kind='bar')\n",
    "plt.xticks(rotation = 60) #文字旋转角度\n",
    "plt.show()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 50,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 432x288 with 1 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "# 分析有没有异常时段，访问接口过于频繁，可能就是黑客潮水攻击\n",
    "df['2019-5-1'][['count']].boxplot(showmeans=True, meanline=True)\n",
    "plt.show()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 51,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/html": [
       "<div>\n",
       "<style scoped>\n",
       "    .dataframe tbody tr th:only-of-type {\n",
       "        vertical-align: middle;\n",
       "    }\n",
       "\n",
       "    .dataframe tbody tr th {\n",
       "        vertical-align: top;\n",
       "    }\n",
       "\n",
       "    .dataframe thead th {\n",
       "        text-align: right;\n",
       "    }\n",
       "</style>\n",
       "<table border=\"1\" class=\"dataframe\">\n",
       "  <thead>\n",
       "    <tr style=\"text-align: right;\">\n",
       "      <th></th>\n",
       "      <th>count</th>\n",
       "      <th>res_time_sum</th>\n",
       "      <th>res_time_min</th>\n",
       "      <th>res_time_max</th>\n",
       "      <th>res_time_avg</th>\n",
       "      <th>created_at</th>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>created_at</th>\n",
       "      <th></th>\n",
       "      <th></th>\n",
       "      <th></th>\n",
       "      <th></th>\n",
       "      <th></th>\n",
       "      <th></th>\n",
       "    </tr>\n",
       "  </thead>\n",
       "  <tbody>\n",
       "    <tr>\n",
       "      <th>2018-11-01 20:47:09</th>\n",
       "      <td>21</td>\n",
       "      <td>3117.20</td>\n",
       "      <td>84.90</td>\n",
       "      <td>260.82</td>\n",
       "      <td>148.0</td>\n",
       "      <td>2018-11-01 20:47:09</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2018-11-01 21:03:09</th>\n",
       "      <td>21</td>\n",
       "      <td>3706.20</td>\n",
       "      <td>78.12</td>\n",
       "      <td>321.47</td>\n",
       "      <td>176.0</td>\n",
       "      <td>2018-11-01 21:03:09</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2018-11-01 21:13:09</th>\n",
       "      <td>24</td>\n",
       "      <td>4602.03</td>\n",
       "      <td>76.31</td>\n",
       "      <td>391.12</td>\n",
       "      <td>191.0</td>\n",
       "      <td>2018-11-01 21:13:09</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2018-11-02 21:34:11</th>\n",
       "      <td>30</td>\n",
       "      <td>4610.15</td>\n",
       "      <td>72.49</td>\n",
       "      <td>463.41</td>\n",
       "      <td>153.0</td>\n",
       "      <td>2018-11-02 21:34:11</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2018-11-03 14:20:13</th>\n",
       "      <td>21</td>\n",
       "      <td>3113.93</td>\n",
       "      <td>74.29</td>\n",
       "      <td>266.20</td>\n",
       "      <td>148.0</td>\n",
       "      <td>2018-11-03 14:20:13</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>...</th>\n",
       "      <td>...</td>\n",
       "      <td>...</td>\n",
       "      <td>...</td>\n",
       "      <td>...</td>\n",
       "      <td>...</td>\n",
       "      <td>...</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2019-05-30 21:33:21</th>\n",
       "      <td>27</td>\n",
       "      <td>6456.64</td>\n",
       "      <td>99.65</td>\n",
       "      <td>978.91</td>\n",
       "      <td>239.0</td>\n",
       "      <td>2019-05-30 21:33:21</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2019-05-30 21:43:21</th>\n",
       "      <td>21</td>\n",
       "      <td>6371.84</td>\n",
       "      <td>65.98</td>\n",
       "      <td>1175.37</td>\n",
       "      <td>303.0</td>\n",
       "      <td>2019-05-30 21:43:21</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2019-05-30 21:47:21</th>\n",
       "      <td>21</td>\n",
       "      <td>3992.83</td>\n",
       "      <td>87.83</td>\n",
       "      <td>440.88</td>\n",
       "      <td>190.0</td>\n",
       "      <td>2019-05-30 21:47:21</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2019-05-30 21:53:21</th>\n",
       "      <td>24</td>\n",
       "      <td>8467.02</td>\n",
       "      <td>120.22</td>\n",
       "      <td>1511.17</td>\n",
       "      <td>352.0</td>\n",
       "      <td>2019-05-30 21:53:21</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2019-05-30 22:17:21</th>\n",
       "      <td>21</td>\n",
       "      <td>4926.35</td>\n",
       "      <td>85.01</td>\n",
       "      <td>826.90</td>\n",
       "      <td>234.0</td>\n",
       "      <td>2019-05-30 22:17:21</td>\n",
       "    </tr>\n",
       "  </tbody>\n",
       "</table>\n",
       "<p>746 rows × 6 columns</p>\n",
       "</div>"
      ],
      "text/plain": [
       "                     count  res_time_sum  res_time_min  res_time_max  \\\n",
       "created_at                                                             \n",
       "2018-11-01 20:47:09     21       3117.20         84.90        260.82   \n",
       "2018-11-01 21:03:09     21       3706.20         78.12        321.47   \n",
       "2018-11-01 21:13:09     24       4602.03         76.31        391.12   \n",
       "2018-11-02 21:34:11     30       4610.15         72.49        463.41   \n",
       "2018-11-03 14:20:13     21       3113.93         74.29        266.20   \n",
       "...                    ...           ...           ...           ...   \n",
       "2019-05-30 21:33:21     27       6456.64         99.65        978.91   \n",
       "2019-05-30 21:43:21     21       6371.84         65.98       1175.37   \n",
       "2019-05-30 21:47:21     21       3992.83         87.83        440.88   \n",
       "2019-05-30 21:53:21     24       8467.02        120.22       1511.17   \n",
       "2019-05-30 22:17:21     21       4926.35         85.01        826.90   \n",
       "\n",
       "                     res_time_avg           created_at  \n",
       "created_at                                              \n",
       "2018-11-01 20:47:09         148.0  2018-11-01 20:47:09  \n",
       "2018-11-01 21:03:09         176.0  2018-11-01 21:03:09  \n",
       "2018-11-01 21:13:09         191.0  2018-11-01 21:13:09  \n",
       "2018-11-02 21:34:11         153.0  2018-11-02 21:34:11  \n",
       "2018-11-03 14:20:13         148.0  2018-11-03 14:20:13  \n",
       "...                           ...                  ...  \n",
       "2019-05-30 21:33:21         239.0  2019-05-30 21:33:21  \n",
       "2019-05-30 21:43:21         303.0  2019-05-30 21:43:21  \n",
       "2019-05-30 21:47:21         190.0  2019-05-30 21:47:21  \n",
       "2019-05-30 21:53:21         352.0  2019-05-30 21:53:21  \n",
       "2019-05-30 22:17:21         234.0  2019-05-30 22:17:21  \n",
       "\n",
       "[746 rows x 6 columns]"
      ]
     },
     "execution_count": 51,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "df[df['count']>20]"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 52,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "<matplotlib.axes._subplots.AxesSubplot at 0x10cd8f9d0>"
      ]
     },
     "execution_count": 52,
     "metadata": {},
     "output_type": "execute_result"
    },
    {
     "data": {
      "image/png": "iVBORw0KGgoAAAANSUhEUgAAAX0AAAEHCAYAAABCwJb2AAAABHNCSVQICAgIfAhkiAAAAAlwSFlzAAALEgAACxIB0t1+/AAAADh0RVh0U29mdHdhcmUAbWF0cGxvdGxpYiB2ZXJzaW9uMy4yLjEsIGh0dHA6Ly9tYXRwbG90bGliLm9yZy+j8jraAAAgAElEQVR4nO2dd5wV5fWHn7OFpRdhKdJBBAERlSioIIoiRI0aey9RJNEYTVXTrIm/qLEQo8FYY+8VFcSuFEHp0ossdWXpCwu7e35/zMzd2bu37t7G3vN8PrB33nln5ty5M99557znPa+oKoZhGEZ2kJNuAwzDMIzUYaJvGIaRRZjoG4ZhZBEm+oZhGFmEib5hGEYWYaJvGIaRReSl24BotGnTRrt165ZuMwzDMPYZZs6c+YOqFoZal/Gi361bN2bMmJFuMwzDMPYZRGRVuHXm3jEMw8giTPQNwzCyCBN9wzCMLMJE3zAMI4sw0TcMw8giTPQNwzCyCBN9wzAymkc+Xca9Exel24x6g4m+YRgZzV3vLWTcR0vTbUa9wUTfMAwjizDRNwzDyCKiir6IPC4iG0Vknq/sRRGZ5f5bKSKz3PJuIrLLt+4R3zaHi8hcEVkqIg+KiCTnKxmGYRjhiCX3zpPAv4CnvQJVPdf7LCL3Alt99Zep6sAQ+3kYuAqYBkwARgHvxW+yYRiGUVuitvRV9TOgJNQ6t7V+DvB8pH2ISAeguapOVWcm9qeB0+M31zAMw6gLdfXpDwU2qOoSX1l3EflWRD4VkaFuWUegyFenyC0zDMMwUkhdUyufT/VW/jqgi6puEpHDgTdEpF+8OxWRMcAYgC5dutTRRMMwDMOj1i19EckDfgq86JWpapmqbnI/zwSWAQcCa4BOvs07uWUhUdXxqjpIVQcVFoacB8AwDMOoBXVx75wALFTVgNtGRApFJNf93APoBSxX1XXANhEZ7PYDXAK8WYdjG4ZhGLUglpDN54EpQG8RKRKRn7mrzqNmB+4wYI4bwvkKMFZVvU7gXwD/BZbivAFY5I5hGEaKierTV9Xzw5RfFqLsVeDVMPVnAP3jtC8pzCnaQo4I/Tu2SLcphmEYKSXj58hNBj/515cArLzr5DRbYhiGkVosDYNhGEYWYaJvGIaRRZjoG4ZhZBEm+oZhGFmEib5hGEYWYaJvGIaRRZjoG4ZhZBEm+oZhGFmEib5hGEYWYaJvGIaRRZjoG4ZhZBEm+oZhGFmEib5hGEYWYaJvGIaRRZjoG4ZhZBGxzJz1uIhsFJF5vrJbRGSNiMxy//3Yt+4mEVkqIotE5CRf+Si3bKmI3Jj4r2IYhmFEI5aW/pPAqBDl96nqQPffBAAR6YszjWI/d5t/i0iuO2/uQ8BooC9wvlvXMAzDSCGxTJf4mYh0i3F/pwEvqGoZsEJElgJHuOuWqupyABF5wa27IG6LDcMwjFpTF5/+tSIyx3X/tHLLOgKrfXWK3LJw5YZhGEYKqa3oPwz0BAYC64B7E2YRICJjRGSGiMwoLi5O5K4NwzCymlqJvqpuUNUKVa0EHqXKhbMG6Oyr2sktC1cebv/jVXWQqg4qLCysjYmGYRhGCGol+iLSwbd4BuBF9rwFnCciBSLSHegFTAe+BnqJSHcRaYDT2ftW7c02DMMwakPUjlwReR4YDrQRkSLgr8BwERkIKLASuBpAVeeLyEs4HbTlwDWqWuHu51rgAyAXeFxV5yf82xiGYRgRiSV65/wQxY9FqH8ncGeI8gnAhLisMwzDMBKKjcg1DMPIIkz0DcMwsggTfcMwjCzCRN8wDCOLMNE3DMPIIkz0DcMwsggTfcMwjCzCRN8wDCOLMNE3DMPIIkz0DcMwsggTfcMwjCzCRN8wDCOLMNE3DMPIIkz0DcMwsggTfcMwjCzCRN8wDCOLMNE3DMPIIqKKvog8LiIbRWSer+xuEVkoInNE5HURaemWdxORXSIyy/33iG+bw0VkrogsFZEHRUSS85UMwzCMcMTS0n8SGBVUNgnor6oDgMXATb51y1R1oPtvrK/8YeAqnMnSe4XYp2EYhpFkooq+qn4GlASVTVTVcndxKtAp0j5EpAPQXFWnqqoCTwOn185kwzAMo7Ykwqd/BfCeb7m7iHwrIp+KyFC3rCNQ5KtT5JaFRETGiMgMEZlRXFycABMNwzAMqKPoi8gfgXLgWbdoHdBFVQ8Ffg08JyLN492vqo5X1UGqOqiwsLAuJhqGYRg+8mq7oYhcBpwCjHBdNqhqGVDmfp4pIsuAA4E1VHcBdXLLDMMwjBRSq5a+iIwCfg/8RFVLfeWFIpLrfu6B02G7XFXXAdtEZLAbtXMJ8GadrTcMwzDiImpLX0SeB4YDbUSkCPgrTrROATDJjbyc6kbqDANuE5G9QCUwVlW9TuBf4EQCNcLpA/D3AxiGYRgpIKroq+r5IYofC1P3VeDVMOtmAP3jss4wDMNIKDYi1zAMI4sw0TcMw8giTPQNI0NRVZZu3J5uM4x6hom+YWQoL88s4oR/fsbnS2yAopE4TPQNI0OZv2YrAEs37kizJUZ9wkTfMDIULxGtM/TRMBKDib5hGEYWYaJvGBmONfSNRGKibxgZijfNkJp/x0ggJvqGkaEI2TO53M+fmcnz079PtxlZgYm+YWQo2TSh6Hvz1nPTa3PTbUZWYKJvGEZWoKr859NlFG8vS7cpacVE3zAyFK+hby79xDB/7Tb+/t5CbnhxVrpNSSsm+oaRoQQ6ci1+JyHsragEYHtZeZSa9RsTfcPIcKylbyQSE33DyFACI3LTbIdRv4hJ9EXkcRHZKCLzfGX7icgkEVni/m3llouIPCgiS0Vkjogc5tvmUrf+EhG5NPFfxzDqD1kUvGOkkFhb+k8Co4LKbgQmq2ovYLK7DDAaZ27cXsAY4GFwHhI4Uy0eCRwB/NV7UBiGER5z7xiJJCbRV9XPgJKg4tOAp9zPTwGn+8qfVoepQEsR6QCcBExS1RJV3QxMouaDxDAMD2vqG0mgLj79dqq6zv28Hmjnfu4IrPbVK3LLwpUbhhECb0SuRe8YiSQhHbnqJAdJ2JUpImNEZIaIzCgutgkkjOykKvdOeu0w6hd1Ef0NrtsG9+9Gt3wN0NlXr5NbFq68Bqo6XlUHqeqgwsLCOphoGIZh+KmL6L8FeBE4lwJv+sovcaN4BgNbXTfQB8BIEWnlduCOdMsMwwiBufSNZJAXSyUReR4YDrQRkSKcKJy7gJdE5GfAKuAct/oE4MfAUqAUuBxAVUtE5Hbga7febaoa3DlsGIaLpVY2kkFMoq+q54dZNSJEXQWuCbOfx4HHY7bOMAzz6RsJxUbkGkaGUhW9YxiJw0TfMDKUbMqnb6QOE33DyHDMvWMkEhN9w8hQrKFvJAMTfcPIVMRG5BqJJ6boHcMwUk82zJxVuqecnWUV6TYjqzDRNwwjbZw67guWFe9MtxlZhbl3DCNDqZousf5igp96TPQNI0Px4vTrtX/HSDkm+oaR4ZjkG4nERN8wMhQbnGUkAxN9w8hwssm7U1mZRV82TZjoG0aGEgjZzCIHT0U2PeHShIm+YWQo5t4xkoGJvmFkKOKNyM2ixm82fdd0YaJvGBlONulgNrmy0oWJvmEYRhZRa9EXkd4iMsv3b5uIXC8it4jIGl/5j33b3CQiS0VkkYiclJivYBj1m2xyeWTTd00Xtc69o6qLgIEAIpILrAFex5kT9z5VvcdfX0T6AucB/YD9gQ9F5EBVtWxLhhGCqjQMpoRG4kiUe2cEsExVV0WocxrwgqqWqeoKnInTj0jQ8Q2j3lGVhiG9dqQSa+knn0SJ/nnA877la0Vkjog8LiKt3LKOwGpfnSK3rAYiMkZEZojIjOLi4gSZaBj7FvU9ZHPJhu01yuytJvnUWfRFpAHwE+Blt+hhoCeO62cdcG+8+1TV8ao6SFUHFRYW1tXEmJixsoSizaUpOZZhxEN9lcEP5q+vURbc0ldr+iecROTTHw18o6obALy/ACLyKPCOu7gG6OzbrpNblhGc9cgUAFbedXKaLTEMh6pJVLJH+LLnm6aPRLh3zsfn2hGRDr51ZwDz3M9vAeeJSIGIdAd6AdMTcHzDqJfUd/eOhPiCwQ+4LHrepYw6tfRFpAlwInC1r/gfIjIQ56G90lunqvNF5CVgAVAOXGORO4YRnWQL3+3vLGD91t08dOFhyT1QDAR/VdP8xFMn0VfVnUDroLKLI9S/E7izLsc0jEyivKKSr1duZkjP1tErx4kXvZNs4XvsixUAPJTk48SCteyTj43INYw6cN+Hizn/0anMXFWS8H3Xd/dOSKwjN+mY6BtGHVi8YQcAxdv3JO0Y2aR7FrKZfEz0DaMOeIIca6t8R1k53W58l2emRhrHGHSMLBLCGiGb6TGjXmOibxgJIFZPzIZtuwF43PWjR9xnNqZWDl7Oou+eKkz0DaNO1E6VYtkqK136pvJJx0TfMBJAqJjzkPWSbMe+Ts2QzcQ9BOxx4mCib9RL1m3dxbTlm5J+nNo2TGNp0Xo1srn1m8VfPWmY6Bv1knEfLWXsMzNTdrxktOCzUeyT+ZWz8HSGxETfqJesKN7Jzj3JH/Adr47E6gaqyzH2ZZIbqZRNZzI8JvpGveT7klL2lFemrLUcr5aHs6qiUnl5xmoqKqtqZFULtcbgrPSYUZ9JRJZNw8goysorWLt1l/u5kob5uUk7VrwPlWjPhmenreIvb85nZ1l5VgpeUtv5IXb+/PTv6d6mCYN7JD6NRqZiLX2j3lG0eVfgBi8rr0zJMROVMmHTDmdk7+bSvQFXR3YPzkrCd/cd5KbX5nLe+KmJP0YGY6Jv1Du+L6maDKesPLl+/dpKUrhWvPfm4H+I1NcWf6gHZbDIJ/K719PTGDcm+ka94/tNPtHfm6KWvs9xs3tvBd1ufJenvlpZs16MbwSCBAQvm8QqJdE7WZnJrgoTfaPescov+kl271QJSVVZyU7HRfPIp8vCbxdGyv26VJ/Efm7RVh76eGnUepZPP/lYR65R7/i+ZGfgc7LdO5WeOybG+oEc+WHdO169+uXWOfVfXwBwzXEHRKxXc+asBI7IrU8ntA4kYmL0lSIyV0RmicgMt2w/EZkkIkvcv63cchGRB0VkqYjMEZH0T9Vj1DtWbSqlIM+5tFPXkRtjGoYo1UK9AWSTViXVvZO8Xe9TJMq9c5yqDlTVQe7yjcBkVe0FTHaXwZlEvZf7bwzwcIKObxiA05r7vqSUA9o2BWBPikQ/VjxR27prL89P/z7s+pwc8T0AsleusvebJ49k+fRPA55yPz8FnO4rf1odpgItgyZSTwvffr853SYYCWLj9jLKyis5sF0zIHUt/R27y2Oq5wn59t3l3PTaXOYWbQ1a7/us1f9mAzVCNuvw3WesLGHc5CUJ2Vd9IhGir8BEEZkpImPcsnaqus79vB5o537uCKz2bVvklqWVx79cmW4TjAThdeJ6Lf2yvUkO2XSF5Jrnvgm7LlJZcJ9DqElZ6qtYSYiekLrG5S9cvy0wmvmsR6Zw76TFtd73G9+uYdvuvXWyJxNJhOgfo6qH4bhurhGRYf6V6vSexHW2RWSMiMwQkRnFxcUJMDEy1sFTf1i1yenETURLv7JSGXHvJ7w9e21CbIPoN4InTKEEMRZGP/A5Y/8XOdHc6pJSlhfvqNX+60q0e63G6jhuzQVrtzHq/s8Z99GS6JWjMH/tVq5/cRY3vTa3zvvKNOos+qq6xv27EXgdOALY4Llt3L8b3eprgM6+zTu5ZcH7HK+qg1R1UGFhYa1t+2TRRt6cVbX7os2lDPn75Frvz8h8VpeUkiPQvU0ToG6iv6eikmXFO/nNy7PD1onUegw5+ChaA8O32qsbTwv1u3XbeH/++oh1hv7jY46/99OY95lI4m1fxfPd129zUm/MXr0l3M5ixpvhrHh7Wewb7SPUSfRFpImINPM+AyOBecBbwKVutUuBN93PbwGXuFE8g4GtPjdQwrnsia/51QuzAsuvzCxi3dbdyTqckQGsKill/5aNaNbQiUauS8imF46ZW8vBPCHdO9G2cf+K1E+3TqzfP91c8eQMAPJzkzeQ69z/TOH9eUmTv7DUtaXfDvhCRGYD04F3VfV94C7gRBFZApzgLgNMAJYDS4FHgV/U8fgJIVMuNKPurNpUSpf9GleFbNZhRK7nG86JcN/H3XKN1tAPEfdfn8Q/unun9mkYwtUt3VPO71+ZzZZd8fvn83OTE+uiqkxbUcLYZ2r2BSWbOg3OUtXlwCEhyjcBI0KUK3BNXY5pGJH4vqSUk/q1oyDPyaxZF/dOQPQjqX4EQr8gxObT9o/IrUeaH3dLPxHf/blp3/PSjCLmBEVKxUJeTnTR31FWTvH2soBLEeCt2Wvpsl9jBnZuGXKbdD7ILQ0D1K+7KovZvnsvJTv30GW/JjQIDM6qvXunPNDSDy/6kVw4sUTvhNvWn3unroz/bBnfxBCWfPkT0xNzwAhUxtuRGwfhfqa67DNH4KGPl1K6J3xI7kX/ncZx93xSrey657/l9Ie+DLtNtPOQTEz0ya7UtfUZL7tm19aNyc0R8nOlztE7ENm9E4pILoyoLd0khGz+bcJCfvrvr6LW+3hRKiLlotYIql/3e7MuAjtxwQbu/mAR93/oRASd/ODn/OqFb6vVmRWu4ziiTbU2qc6Y6AOVmTVo06glXnbNLvs1BqAgL7dOPn2vpZ8bQfXjTZsQvaWvNT57f9du2cVr3xRF3sE+ROjoJrjk8em8OtP5nonQxngFtjLEBuM/W85Rf5/M/LXbeHNW3UN409nQNNHHWvr1hVVuS79La0/0c9hTUXv3jufTj3de21Ct9cC6oGstuE7Vtj73jvv3vPFT+fVLs9md5AFnySQW99Zni4sjhsnGS3BLf/H67XyyaGOY2lARxsi1dYj8+3RxMdt9A73Mp59mIvX6f7Hkh9QaY9SaVZtKadU4n+YN8wFH9BPS0o/bp6/h18V4swtVrVxPtLzY8WQLhqpSXlH9vJWVV3Dz63P5YUfd4tbj9ekn4rsGxju4+9q1t4LLnvg6bP1Y3UFbS/eya0/VAzicK2r91t1c+vh0rveFj5tPP82EO/03vTaXix6bxsofdoapYWQSq0tK6dK6KoKiID+3jtE7zrYRQzZ9n72O0FD385uz1nDb2wtiD9mUqs/llVVlzjGjC8YrM4tq7Q+/Z+IiDvjje9U6wd+ft57npn3PHe8sqNU+PWIdkRyN9Vt388SXK2I7psa371jdvYfcNpHRD3wWWK4I40fa5b6ZLfONgraWfpoJ9wMsWr8dgNI9++7rdDaxqmQnXV1/Prgt/URE78TYk+t1hFZqdZEG+NULs3j8yxVRhacqeqdqP3uDWt2x+Kh/+/JsPllUXCvh/9+UVQDs3lN13ETN4hVvGoZw52vM/2Zw69sLWO2bGvPhT0JPWhPufIWzJZx7JxQrfRP2hDrOG9+uCfx+/tXW0k8C/oshHKrKn9+Yx6zVocPZQt28Rmayt6KStVt2BzpxwRP96M221SWlXP/CtzUeEOUV0UM2gzXp+Hs/CTQSYnHvqMKDk5cEcgZ5iEhARPZWeAO2HDvCCUZwB+S23Xvr1KL839SVvPT16ugV4yDW6KVoG2wpdfzjXutaVfl6ZeT7OHjf4R4G4Vrs0bjhpVn8J2i2tOtfnMUDH9bMBZTOXsR6K/pD//FxjbLgJFa791byv6mr+GHHnpD78H57E/3MZ83mXVRUaqATF2KP3vnzm/N4Y9Zavlq6qVq5JxbxhGwuL97J3DWxDwLasK2Mf05aHPAxVxucFRD9oJZ+GFG6e+Kiasu/emFWXK3WYO6ZuJjfvzon5voPTl7CV0sj94GpOlFIv39ldo1+A4i/BVy8o4ypyzdFfPvx9hm873At/dq6xd6ds46/v7ewZvlcJ9VCtVHWaYwYzKrpEoNfFUO9Om4p3UPLxg2AqovEa/EZmcuSjY6/1O/eaZCXE3FQjYc36nJPkAjF4t6pa8imd415ETn+6Rc98fFE32t8hBO4UOGctW211oZ/ummMV951ctg6qsrNr8/lk0XFHNl9vxrrgyOToll/9iNTAFh0x6iwdbxzuqx4Z1B5zbrPTF3F1OWbaq6IgxdCTI4Djito/dbdtG/R0Nw7iSZcS6hGvRDVBt42KfDZ+12CxSBWNu/cQ7cb3+WdOYlLzWtUp2hzKTe/PpdfPDuTZgV5gZTKELt7p0Geo6bBLeqKWo/IDX/91Wx4hEHE59OvXitYyLfu2ssht05kw7aakTXxakus905tUY0c0nqWK+L++qEI3jZSwyzcPkL9Tn96Yx7vzKlbErQbI6RjfnrKSvfYNUn2ufeol6KfkyMce2D0lMyzvo88ki5w04UQjq2le5kwN/LFsdTtrX/CJmlJOKtLSrnptTkcd88nvDxjNecM6sz7NwyjVZMGgToF+bGJvtfSDxZ9T0hChWzuKCtn5qrNgbcBP3UbnOXgdOQS0q5g98O8NVvZGiaZWDT3TvA1XF6Z+FEr/jBPxe82q73fNHjLSGMXwmnp4vWpn1OgcQMnJ1RwS3/Jhu30uHkCkxZsSLoN9da94x9FuXtvBQ3zc2v49K98OnysLvh9qjWvmhtfm8N789Yz+TfH0rOwacTtrUsgcawuKeWhj5fyyswickQ470dd+PnwnuzfslGNugV5uTFF73iZFMO1qENp0zXPfsOni4vp5utD8IgkmuHWeYfwa0HgTdN9cHl1gkUs0ojhaG6Ed4NEP1Z3UNHmUto0LaBhfm7UuiPvqwprvPHVORFb+sHE+gjaFUH0w/noxz4TebKZZOCdr+DfxUvl8MasNaz8YSdXHNM94u9aF+qt6PtP1zNTV3Hl0B41LqBovvpwIXMAJTudzt8N23ZHEH2L/kkU328q5V8fL+G1b9aQkyNceGQXxg7vSYcWNcXeI9bBWeHcO+VuwHaom29OkXOT+kP2Avhu6Ne/LWLi/A2+VdE6EzXwv3f9LVy/ne/WbQvUCG6950US/Qgirqo1WtsVqiEbKf57563Za7nu+W8ZdmAh15/Qi5/++yveuObosMfx7hVwctkc0qkFENvsYOHdO9W3XbN5V9h9hHvwrdlStc25/5nCi1cPiWpPXXlw8hI27dzD5Ud1q1bu/Q7vzlnHu3PW0bxRHuf+qEtSbKi3ou9PghTqFTxSuUcon/6coi30378FLRs7oz690DEjOaz8YSf/+ngpr3+7htwc4aLBXRl7bE/at2gYdVsnDUPs7p3gRkAkn/62CBOh+/dyw4uzw64Ldcyq1Ata7YHwxqw1AaHzC3llpfL89PBhlZFa7pVa8y20oiJ62/r/3AiVzxYXBwQ8UlqDGrjfI97G0Mbtu2nVuEHIHPfnjp8adrtYXl6mrSiJy5baRvhs213Ow58s49Ih3aqVB5+LHWXJGxtUb0V/k6914TWE4p13NLilP3PVZs58+Ct+d1JvWrkRPptLQ4d7QvU0uUZ8rPhhJ+M+WsKbs9aSlyNcMsQR+3bNo4u9R0F+6JDNeWu2snjDdn56WCfA794JE70T4ueL5DaJx6fvF+VuN77r2391sfJfQ/5jvz9/Pa9GSMIWSfAqKrVmh2iY4aj+4lB14umE1Dh8+v69HnHnZM46vBP3nF1jCo9qBD/okxEpU9c+12Cbgk9FMjt1663o+4lb7CuVnJyq6Inb31nAvDXb6N+xOeBMmtxlP2e4/5bSvagq90xcxE8O6Ujv9lXRI1ql+kaMLCvewb8+Wsqbs9bQIC+Hy47qxtXDetA2DrH38Ebkqmo1d8Ap474AqBJ9171TQywihGxGFvbYvfrh3jZVtZowPOIb9ONtsnjDdj5bHDkdsn8f3W58l9tP61dtXY2Wfgh71mzZFUiAtmj99pBRQv7vEXy+g4llRjL/vvy8MrMoquh/uXRTtYi5WDXf/9CNRl1DYYO3Dn4AJjOks9aiLyKdgadxpkxUYLyqPiAitwBXAd7VeLOqTnC3uQn4GVABXKeqH9TB9jhshVPGfc68NduiVwa+XPYDb85aG7i4N2wr45FPl/GvCw4FnIvIm4P17g8WceGRXXjo42VUVMKNo/sE9uO1iEzzo7N04w7GfbSEt2evpUFeDj87pjtjhvWksFlBrfdZkJdDpTqCFGmu0wa5od07sUyiEopIt2uwVjw3fVXIervLK3lrduhQXy9Sxd9BGv541Q94n290aEVlTZ9+qIfQPR9UDfpa6KYm8Rj30dLAvvz7zYtwvmPNXjpvzdaQbhdVZUWUfFjvz6uaHD4ZAlpX0Q9uyQefi2RGb9alpV8O/EZVv3EnR58pIl6Q+32qeo+/soj0Bc4D+gH7Ax+KyIGqmvTENiISs+ADXPxY6BmEqoZ8V38d2+z69b3UD8uLd7C5dE+NQTVGTZZu3M6Dk5fy9py1NMzL5aqhPbhqWA/aNK292Hv4p0yMNNep59Nft3UXO8rKaVrg3Bbe7x3vxOiRNCZYLMJdl3eFGNnpcfKDn/Per4bFZEskcapQ5bVv10St/3pQnVCs3lzVoV1eqeRFCOoJiH6UfXpvZMGEexj68cfaJ0P0w7nBYiXYpOC3noxs6avqOmCd+3m7iHwHdIywyWnAC6paBqwQkaXAEcCUCNskhNvrmBnQI5DDA632o3mRA97MTXe8+x1zirZyx+n9AfPph2Lxhu08OHkJ785dR6P8XK4e1pOrhnandQLE3qMg35scvSIg5KHwngfPT1/N50t+4Is/HA/UzG4ZK5Fu10SMkK1UOOn+6K18gGP+7+Pw+wlhS7TghnBMmFvVsva+457yypDnLlIobCwsCnrbiEYyWs0v1jEnUY15FYI0IhEzhoUjIT59EekGHApMA44GrhWRS4AZOG8Dm3EeCP4u9iLCPCREZAwwBqBLl+SELdUG7+H+6eJiGjeoOnWrSpxXTU/0567Zyg87ymok0TJg4fptjJu8lAnz1tE4P5efH9uTK4f2YD/foKpEURCYJzdyq8wvCkW+0L+KCCGbkYh0w4YT/R92hg8ISCT+8MlQAl9RqWyPEJkUC+WVyvbdezn4lokcc0CbmscIkwAtVhrFMDbATzIE9I53v6vT9sGnvkZHboa6dwAQkabAq8D1qrpNRB4Gbsdp8NwO3AtcEc8+VT0mccMAAB5OSURBVHU8MB5g0KBBSfz68eFdrLv3VlZ75fXy7W/dtZfXvimieLvTF/D1SscfOWX5Jv4+4TtG9mvHoZ1bxZyqtz7x3bptPDh5Ce/NW0/TgjyuGX4APzume7URtInG796JRDghrq1PP1JrOdyx9tQh739tCdXST8SbSEWlctHjjov0ixAJ2Ly+k9q+VSzeGN9I2kycDjX4QRR8hWWkewdARPJxBP9ZVX0NQFU3+NY/CrzjLq4BOvs27+SW7TOEC6PyD9D59UtVcdkzVjmpXnsWNuGxL1bwn8+W06ZpASf2bcvIvu0Z0rN1TCMa92Xmr93Kg5OX8MH8DTQryOO64w/gimO6B5LaJZMGbks/2vSCYfOq19INEdGPns4ZsYO49vlva5TV1VcNzneMlGnUE7RPo0QehePtGHz6fl6ckdj00InghhdnVVsOvioyMmRTnO7mx4DvVPWfvvIOrr8f4Axgnvv5LeA5EfknTkduLyB0j2mGEu53CDWzVq+2TQOZH58fM5iCvFw+WbSRSQs28PbsdTw/fTVNGuQyvHdbRvZrx/DebWnRKD+Z5qeUeWu28sDkJUxasIFmDfP41YheXHF0d1o0Tt137NTKGa37x9fnMu6Cw+jYslE1gfdCc8Plpwl05Mb5ZhZJ2J+asjKufSWT6SEiY+oy05hHtAdbbVv4qaRZQR7by+rm5orE7KKqh2LR5lJ+8ew31dY/+NFSehQ25fRDI3WT1o66tPSPBi4G5oqI99i6GThfRAbiPLxWAlcDqOp8EXkJWIAT+XNNKiJ3Ekk4cVi1qbRaRseOLRtx9AFtAqLfIDeHFo3yOW1gR04b2JGy8gqmLNvExAUbmLRgA+/OXUdejjCkZ2tG9m3HCX3bRUwvkMnMLdrKA5MX8+F3G2neMI/rT+jF5Ud3T8sDbUCnlvzrgkO58dW5/PiBz7n37EMY0rN1YH2FKjlI2Id5LFk2Q1ESwT//eYbPuXzrW/PrvI9obwue+zOTGX/JIM5/NPwo30TyZJiEjNe/OCuzRF9VvyB01NWECNvcCdxZ22Omm3CvXHsqKunWunHAzdOjsAkDO7cMrM8LChcsyHNa+MN7t+WO0/ozq2gLE+dvYOL89fz5zfn8+c35DOjUgpF92zGyX3t6tW0aNaY53cwp2sIDHy5h8sKNtGiUz69PPJDLju4WmKQ8XZwyYH/679+Ca577hiufnsFPDtk/sK6iUsnPDf+7+n36lzw+nWUbd/DljcdHPeaTX61MiO0eHVo0ZN3W3bXevkFeTsx9Bv4WaG2JFDG0L3DH6f0Z0rM1ww4sjDr4LRH894sVST+Gn6wYkZsoIr22tmjcAFzR71nYlEN8oh9pYFBOjnBYl1Yc1qUVN47uw9KNO5i4YD2TFmzgnomLuWfiYrq1bszIfu0Z2bcdh3ZplbTse7Vh1uotPPDhYj5eVEzLxvn8duSBXHpUN5qlWez9dGvThFd/fhR/m/AdT0+pGgz1yswiLhrcNeTvun333kCs/Notu1iwLvZxHokm0kCnWDhlQAde+2af6j5LK54L8OELD6PfX1MyfjSl1Mt8+gAXDU58qGekHvWWPvdFz8ImdGvdOODSyM+J/TQf0LYpvxh+AK//4mim3TyCO8/oT9fWTXjiyxWc9cgUjvzbh9z46hw+WrghagdlMvnm+81c+vh0Tn/oS2at3sLvTurNF384nmuP75VRgu/RMD+X207rz+AeVbM1/ekNp7sp1LN88YaqWHC/4O9Iop83HPFcP6EoiDRSKst469rw2UA9vMuhSUEe7/zymFof648/PqjW2yaTetvSv+P0g7nj9IPjyqcRjeURhn638nVQnnFYJ0SEQzq35KulP9Q6RLNd84ZceGRXLjyyK9t37+WTRcVMXLCBd+as44WvV9O4QS7Dexcysm97juvdNiWdpDNXlXD/h0v4fMkP7NekAX8Y1YeLh3SNOPgpk3j0kkEce/cn1fzuwQ/zPeWVYSclueLJr9mwLTZXy/oY60Wjri395g33jd8mGv32b878tdHfuNo2K2Cj22/w6s+P4syHvwqsa9koetSY393Xv2MLhvZqU6u+mDMP70ROjiRscGiiqLct/WTw3LTQc18C1UIQPQE8qV87+u3fPCHHbtYwn1MP2Z9x5x/KzD+fwFNXHMEZh3ZkxsrNXP/iLA6/YxIX/ncqT321krVbwucWry1fryzhov9O48yHp7Bg7TZuGt2Hz39/HD8f3nOfEXxwzuOVQ7tXK1uysfoIz5Kde9gdJg//9BUlrAqVQz+J5MXZ0g+ee7aiUrnymO5hajssuXN0INopU7locFeG9448I96PurXitV8cFVhu3CCXNk2r7k0vuV4k4o0tOvngDiHL83Il5CQ7028ekdZ7xkTfx4+6taq2HGlyimBahmhlX3hkV968tvavh+EoyMvl2AMLufOMg5l60wjeuOZoxgzrwYZtZfz1rfkcdddHnDruC8ZNXsKi9dvrNCJx2vJNXPDoVM5+ZAoL12/j5h/34fM/HMfVx/akyT4k9n42+DpFt+7ay4yVm6utH/z3yTVC6NKJv6UfTixm/eVE/npqX6D6m8s5gzpxzXEHBFJShGLmn04gPzcnkH7Co0dhk7qYHTd3nzWA23xZQP0M7NyS0f3bB6YbDMV3t43i5bFH0alVY2b/ZST/OGsAB3VozrvXDQ3U8R6gLRrls/Kuk5l284ga+znhoHbVlv90ct9qyz8f3rPa8p1n9Gfc+Ydy+2n9AqlXnGNJIIjD/yBu27whvz7xQADaNU9c2pFY2Tfv2hRx048PivnVrGWaYuxzcoSBnVsysHNLfj+qD8uKdzBpgRMJdO+kxdw7aTFdWzcORAIdFmNH8JRlm3hg8mKmLi+hTdMC/nTyQVx4ZFcaRbjp9hX8kTAfLdxAWXkl/Ts2jyspXzxccXR3Hv+yeoTGiD5tmbwwtolHhvZqwxw3qmbqzSMo3VPO+/PWk5+bw0n92gdSWBzfpy23vr2AXXsr+L8zD+bAds04tIvTkBkzrCcPfbysxr7HnX9o2HxHu/dU7zO6aHAXnpnqvO02bpBL6Z7E9Sl1atWIswc5YzcvGdKNjdt2c8TfJgPwyEWHM6p/eyD05CKtmzTg/vMGVrs2WzTO5xx3f4W+7+cFwXkNuuBw3A9/PYzO+1Vvnfdu34yVd53M3yZ8x/jPlnOYe06P6tma564aDMCpvqgwr68oLyeHAR2dSWauPf4ApvkSOV4ypCsiMKRna0bd/3n0E5RA6r3of/q74azcVMqW0j386oVZEesGN4jDuVLfv35ojR/qyB6tQ1dOMT0Lm9Lz2KaMPbYnG7ft5sPvNjJxwXqe+moVj36+gtZNGnDCQe0Y2a8dRx/QptqIYFVlyvJNPPDhEqatKKGwWQF/PqUvFxzRpV6IvcdFg7sy0Z2A+t0568gRGNGnXdJEv2vrxrx17dGUlVdy9iNOfsFQg6CG9y7kk0U1QwR/fWLvgGAX5OXQtKAhlwTNvATQZb/G/ObEAxnVvz292jWrtq5Fo3zuO/cQ2jQt4Kiebbhv0mLOGdSZLkHuB7/f/OIh3diyaw//+XQ54Jy3O04/OFA3kf1lg7pWf8v2Op9H9GkbEHyofk+e96PObCndy11nHhxxhHdOjvDz4T2ZMHdd4E3pyqE9nP35GkBzbxkZMQjhxlF9+NWIXnz7vTMrX7Qo6rwcoVWTBqy86+Sa63JzuPzo7oHMvMFMvcl5uCeDei/6XVs3oWtr5zW1QW4OnfdrzHPTvw/pnw92guTmCDP+dALF28sY/UCVyPt9rA9feBgL12+nT/tmjDv/0IgpfFNN2+YNueDILlxwZBe2797Lp4uLmTh/AxPmruPFGatplO+4iUb2a0erJg14+ONlTF9ZQttmBfz11L6cf0SXepkmYtiBhbwydghnPTKFD7/byMEdW9AxRn/2IxcdHphQW8RpKNxyal9ueTv8G+F+TRowoJMTwvvoJYP4ZNFGfnl8Lwb/3WnJ/vOcQzipX3te+Hp1SNH3C1Mkl6OI8MsRvcKuP+PQToHPvz2pd8g6z155JN+XlAbsBbh0SDcmLdhA76AHicfC20cxfUUJ+bk5gQFNFw/uSm6OMPbYnmzZtadGIyk3R6ioVC4e3JX3569nzLDqLpMWjfN59edHVZuUyNnOub/OPrwTd505IOx3DeYPo/rwh1HOXBd+EfYnb4sWdZaTIzG5NHu3a8aiDdtjCuDovF9j/nJKX24L8ijEMh1oban3ou9ntNvh8ueT+zL5uw1s2FZWbeDK5Ud3Y+aqKv9ubk4ObZoW1HDd+H/L0Qd3COzX/4qXaTRrmM8pA/bnlAH7s6e8kmkrNjkDwhas5/35Tlrc9s0bcutP+nHujzrXS7H340/0dlTP1jFHuBzWtSU3je7D399bSJ/2zXn3l8fww46yiKJ/hM+fe2LfdpzY1/EZP3TBYVzz3DcM6NSSJgV5XHF0N4b0aM2PH3QEskFu1Ry/njso2YP0WjZuUKPVvH/LRlwaNJG3n/zcHIYd6HSwPnfVkbRt1pAD2jYNrG/foiH/ufhwrv6f87D85fEH8JuRvSnZuYeWjfK53ecH93N4UOsf4LoRBzCnaAs3JSgcslGDXD76zbHs3zL+TuxwXWUvXj04YqRfMGce3qmG6CeTrBJ9j0YNnMk67nj3O848rBPXn9ArMPdq0eZdgUE53qja4BG1mTQ4qjY0yMthaK9ChvYq5Naf9GPumq0Ubd7FiIPa1nux9+i6X+NAfqRjerWJOdVC04I8jnbTBas6uXvaNm/Is1ceyYX/nVaj/lNXHBF2Xt+TB3RgZL/RgbdDEaGvL9rrm7+cGOiU/fdFh7EziZNl1wX//XBUz5qplAFO6teea487gH99vDQwjL826bQHdGrJ9D+eUBszw9KjsGn0Sj6iXSotGzfgsC41v1uPNk1CvlE2K8jjhIPacvGQbhRvL+PUQ0JHAyWKrBR9gIPdDpbi7WXVbsqxx/Zk7LE9Kd1TXi1n/hOX/4jLn/gaiD8XSyaTk+OMJ/CPIM4G8nJzmPCrocwp2sJhXVrVmAYwHI0b5AX8wt3bVEW3HB2UN35ApxbMKdoa9Q0ikjvQH6lTkJebcYOsHrnosLhG+noPh0xPKZIsPvrt8JDlOTnCfy/9UcrsyFrR/1G3/bhuRC/OOqxTyPV+wQc4rnfbwOdI4W/GvkN+bg6Hd3VcLwd1aM7vTurN3b75YD3OOrwTAzq1CIy56NamCY9eMqja6F4/z115JN98v5k5RVtrRILUJ0b178Co/rG3Slu78fJt6jDvcSbgua7OHhRaOzKdrBX9nBwJxMrGS5sm+/ZFa4TmqqE9AqJ/91kDKMjPZdUPO0N2jnp+eT/3nzuQ5o3yOOqANgzu0ZqLh3SrVXbRgzo058B28bkc9gUuPLIrzRrmcdohic8cmUraNW8YMiJnX0GSORdjIhg0aJDOmDEj3WYATuz6vDVbuWpYD9Zv3c3m0j0c1CExI26NzGDTjjJaNW6QlbObGfUHEZmpqoNCrcvaln5tGNKzdSAfe/sWDZMaVmWkh0ROzG4YmYg5pw3DMLKIlIu+iIwSkUUislREbkz18Q3DMLKZlIq+iOQCDwGjgb44Uyv2jbyVYRiGkShS3dI/AliqqstVdQ/wAnBaim0wDMPIWlIt+h2B1b7lIrfMMAzDSAEZ2ZErImNEZIaIzCguTv7ExIZhGNlCqkV/DdDZt9zJLauGqo5X1UGqOqiwMPJMOYZhGEbspHRwlojkAYuBEThi/zVwgarOj7BNMbCqlodsA8Q/uWXyMbviw+yKD7MrPuqjXV1VNWSLOaWDs1S1XESuBT4AcoHHIwm+u02tm/oiMiPcqLR0YnbFh9kVH2ZXfGSbXSkfkauqE4AJqT6uYRiGkaEduYZhGEZyqO+iPz7dBoTB7IoPsys+zK74yCq7Mj7LpmEYhpE46ntL3wiDZOv0RYaR5ezToi8izdJtQyhEpEW6bQiFiPQSkaMBNINe8ex3jA8R6SEiPdNtRzAi0kFE4p81JotJx7W/T4q+iDQRkYeAV0XkAhHpnm6bAESkqYj8E3hZRK4Skd7ptglARBqIyL+Bd4D9RSQjksa75+s+4H8icoaIdEuzSUC13/E1EbleRAam2yaoZtcbODHcGYF7P/4TJxT7IRE5xS1P69uke77+LSInpdOOUKRTw/ZJ0QduA5oDdwCHAnel1xwQkWOBD4EK4E7gGOCEtBpVxYlAW1Xtraovq2pZug1yM66OcxfvBg4A/pY+ixxcgZ8I7AH+iiOuv0irUYCI9AEmA91UdYCqTku3TT7+ATTFGXQ5GzgL0vs2KSL7A48C5wAXiEimDe1Pm4btM6LvjuZFRJoCzYC/qepnOAKbIyJ/SpNd3utsEXC1qv5OVT8FyoCV6bDJtcs/BqMQmOqWjxSR40Sks7uc6vTanl0dgINV9QZV/RJ4HxgoItel0p4QbAUeVtUbVfUL4HOgwm2ZpbPluguYDjwHICKDRKR/Ol1jIpIjIi1xHoz3qWox0AqYKiJNvDoptinX/bgbeAAn7UsrYJRvXVrIFA3LeNEXkT4i8gRwm4h0VdUdOD/iBQCqugX4P+AsEWmfBrtude1apqqzRaS1iDwDnARcLCK/FZH90mDXbSLS1S3eH2gnIpfhXGA/Ad4Tkc6qWpkKMQvxOxYBxSLyZ7dKQ5y0HJeISNtk2+Ozq5eI/N5bVtUVwOu+KqXAgaq6M5Ut1xB2rcJ5AI0WkW+A+4CbgKdTfN0H7FLVSvf+2wX8VkSmAZfhtFy/TPH11UtE/gP8UUR6qGoJ8I2q7gKeAs4FukbcSfJsyygNy2jRF5HWwBPAPJy0DX8TkRNwLvZzfK9sc4BPgJRMUR/CrttE5Bx39WbgZVXtCtyCk1RubJrsulNERgKPAT8DBgODVfUGHFfUvyD5r+Fh7DoFuA64XEQeA54EXgI+A1LiQxeRC4CPgN+JyBi3LNe9KT16ABFThaTCLpcPcN4on1bVocC1OHmpUtJCjGDXWJyH0HJVPUBVr8a5Hx+ClFxfN+D0cywA2uJcX93dOTtQ1VeBLcB5kuKO5kzUsIwWfaAPUKqq9+KcpPdwnti5wGs4Fxruj1sBpCoPc7Bdk4ARInKo2/p507VrIc7FlqpkTsF2vY9zviqA+3H6GbxX3CeAtSm6CULZdQZOC7E/8AwwVFXfBXoDG1NgEzgCeinOm89YEWmsqhXi4N0bPYBvAETkNN/bU0rtAlDVrcD9qnq/u7wZmAusTYFNkezajTMvxi5f3aeB9SLSIAV2lQBXqOoDwA2uLZ770nMn3g8cDfQQkYsldUEWGadhmS763wAFInK4qlYCX+JMwnIGTit6sIiMdXvnhwGVabSrCDjVX0lEBuB0otZIH51Cu1YDl+N0GBUDV4jImcDDwCJV3Zsmu1YBP1PVUlX9WFVLROQIQIBtKbAJ15/6uapOwRHPW9xVOa6dAAcDnUXkLeAioDxddolIjiv0uMuHAlcAK5JtUyS7XD7CabmeJyIjcDrpF3mt7STzJjBdRArc63kpTicpqlru/p2Bow8zgKuAVFz3kIEalhGiH6GDJR8nOdsZEPC3zgbauxEolwKNgFtxWkDvpNGuOUAzEWkpTrzy2zjRA+PcFmy67PoW2N+94K7FcT9dBjzotRjTZNdsoKl7vlqIyP/huKGeUdXlKbIL30Pvbhx/+cGqWuFuV4hzI44GnlXVs1U1YQ/wWthV6W7XUkTG4wzTf1BVn0+UTbWxy1d+MTAEp9/oQbd1m3S7VHWLOnhRaQPxzdAnIrkicp5bPkZVhyXhGmsetOz1Y6RVw0Kiqmn9hxPudTPQKsz6E3DE4BR3+UCcp3XDDLTra88u4PxMtCuDz9fR6bArqO5twGPu5yPcv5dlmF1Hun9PzDC7jsB5Q0rL9eXWEaAvMMG33Mf93CmJtv3Z1aS7gHPcslzf+rRoWLh/aWvpi0hjEbkNx791CE6PfyimA5/idJZ2BgbgPMWbZqBdRVS9Via69VVXuzL9fH2ZJrv83A6cJiI7gFNdd8qTGWbXyW5n86QMs+vHVPUXpdwuERF1FLUFsMoNrJgNnOj+jkVJsK29iLwA9MJxoc4BbhCR1ur0DXn6mlINi0qqnzJAc/dvnvvlm+AMgrkV6Bzlafo/HF/iELPL7EqUXTgtwkLgLZy3j2PMrn3PLrf+bTh+8ReBYYm2K8i25jgz/3nlbXECJA4Js11Sr/2Y7U/ZgZy41Edxeq/PwfEze+v6uCfjp0B+8AXm+9zY7DK7EmmXr04DYJTZtW/a5V1fOIETP0u0XSFsOxcodMtz3L9tcDpu24Syzf2c8Gs/3n+pdO/chfME/gdOvPg/vBXqhDbOBIbjvCrhW6e+z6Vml9mVSLsg4BrYo6rvm137rl1unUmq+lgS7Aq27Uiqwi29iJs2wBpVrRainYJrPy5SIvriDBXPB+5U1Y9xwgdbiMivfNWexXmV6ycil0sKkiSZXWYXJG/wkNmVOruSZVOctnUD1rn1TxU3o22mkRLRV9XtOEOgz3SXS4B7gEu9UCd18naswQlDuxEn4ZXZZXaZXWZXWu2K1TbgWKChOCPMf0fqxgLERyJ9RTjxpl2CynLdv8fgDGdv4i43xBkgdL67PBBnwM4NifZhmV1ml9lldiXRtgvd5beAZcDYZNiWqH8Ja+mLyNU4IVLBrzTq+gC/wOnkuAcCQ7crqEpRsBTorar3Jcoms8vsMrvMrhTY5qVOeAIYoKqPJNq2hJKAJ2Mb4BVgCtAv1BPS/dwZJ8RpJc6I0JNxOmVGJOmJbXaZXWaX2ZUK25IyUC5p37cOJyrP/ZuPk7r0Une5LXA4Va9EHYEXgDfd5RHAb90TfGYSfkCzy+wyu8yufdq2ZP7zYltjRpysdXe5J2qCqn4gIkOBq3F8XAfg+Nw24HS2NMEZYp/UWZHMLrPL7DK79nXbUkFcoi8igpMjuznOAIXLgVdV9WFxZn1pC/wGaI0zZdqPVPVS3/a56iazSiRml9lldpld+7ptqSIvepVqNMPpPT9JVbeLyA/AT0TkDFW9Q0Ty1cm2t15EVgO93KeqApVJPFlml9lldpld+7ptKSGu6B1V3UZVJwY4uaG/xklq1N49WYgzucKFwDZVLVfVCo3Xj2R2mV1ml9mVRbalitqEbL6OM4F1B3WmlZuDMwlxB3H4KzANWKiqf460owRjdpldZpfZta/blnRqI/pf4MTMXgagqt/g5NJu4j4JpwOjVfUviTLS7DK7zC6zK0tsSzrx+vRR1XUi8iZwl4gsxXk12o07jZyqvpdYE80us8vsMruyw7aUoLWPcR0NPA4sBK6t7X4S/c/sMrvMLrNrX7ctmf/ijtP3IyL5znNDkz5ZdDyYXfFhdsWH2RUfmWoXZLZtyaJOom8YhmHsW6RtjlzDMAwj9ZjoG4ZhZBEm+oZhGFmEib5hGEYWYaJvGIaRRZjoG4ZhZBEm+oYRAyIyXESOqsV2K0WkTS22uznebQwjFkz0jazDTZUbL8OBuEW/DpjoG0mhNhe/YWQ8InIJzpR2ipNFsQInv8qhwJci8hDOZBqFQClwlaouFJFTgT8BDYBNOOl1GwFjgQoRuQj4Jc7Q/UeALu4hr1fVL0WkNfA8zhR7UwCJYucbOHOvNgQeUNXxInIX0EhEZgHzVfXCRJwTwwAbkWvUQ0SkH0763KNU9QcR2Q/4J84E2KepaoWITAbGquoSETkS+LuqHi8irYAtqqoiciVwkKr+RkRuAXao6j3uMZ4D/q2qX4hIF+ADVT1IRB4EflDV20TkZOAdoFBVfwhj636qWiIijXASfx2rqptEZIeqNk3meTKyE2vpG/WR44GXPaF1RRW3rEJEmuK4al52ywEK3L+dgBdFpANOa39FmGOcAPT1bd/c3e8w4Kfucd8Vkc1RbL1ORM5wP3cGeuG8YRhGUjDRN7KJne7fHJzW/MAQdcYB/1TVt0RkOHBLmH3lAINVdbe/0PcQiIq7/xOAIapaKiKf4Lh5DCNpWEeuUR/5CDjb9a/juncCqDNl3goROdtdLyJyiLu6BbDG/Xypb7PtOPOrekzE8e3j7sN7gHwGXOCWjQZaRbCzBbDZFfw+wGDfur1uBkjDSCgm+ka9Q1XnA3cCn4rIbBx/fjAXAj9z188HTnPLb8Fx+8zEmV3J423gDBGZJSJDgeuAQSIyR0QW4HT0AtwKDBOR+Thunu8jmPo+kCci3wF3AVN968YDc0Tk2Vi/t2HEgnXkGoZhZBHW0jcMw8girCPXMJKM27cwOcSqEapqkTpGSjH3jmEYRhZh7h3DMIwswkTfMAwjizDRNwzDyCJM9A3DMLIIE33DMIws4v8BVFVZkXLs5bwAAAAASUVORK5CYII=\n",
      "text/plain": [
       "<Figure size 432x288 with 1 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "# 某一天的响应时间，平均响应时间\n",
    "df['2019-5-1']['res_time_avg'].plot()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 53,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "<matplotlib.axes._subplots.AxesSubplot at 0x11973c490>"
      ]
     },
     "execution_count": 53,
     "metadata": {},
     "output_type": "execute_result"
    },
    {
     "data": {
      "image/png": "iVBORw0KGgoAAAANSUhEUgAAAX0AAAD5CAYAAADLL+UrAAAABHNCSVQICAgIfAhkiAAAAAlwSFlzAAALEgAACxIB0t1+/AAAADh0RVh0U29mdHdhcmUAbWF0cGxvdGxpYiB2ZXJzaW9uMy4yLjEsIGh0dHA6Ly9tYXRwbG90bGliLm9yZy+j8jraAAAY3UlEQVR4nO3dfZBV9Z3n8fcHGjoCGiM6XdA4gVnRbWBWE7scy2mn6DA+wKR8mJ1K7HXHp1bIRtnJlGWC27uV7Li9m+hks5VMNOI0he44V10dVxIfiIG+6zAJ0cYwCrRGFCy7dWQVFgIqj9/9455mLtDAPd23+/blfF5Vt+6533sevpe6fO+vf+d3fkcRgZmZZcOoSidgZmbDx0XfzCxDXPTNzDLERd/MLENc9M3MMqSm0gkcz+mnnx5Tp06tdBpmR9i1axfjx4+vdBpmR1izZs0HEXFGf++N+KI/depUurq6Kp2G2RHy+TyzZ8+udBpmR5D09tHec/eOmVmGuOibmWWIi76ZWYa46JuZZYiLvplZhrjom6WUy+WYNWsWc+bMYdasWeRyuUqnZFayET9k02wkyeVytLW10dHRwf79+xk9ejStra0AtLS0VDg7s+NzS98shfb2djo6Omhubqampobm5mY6Ojpob2+vdGpmJXHRN0uhu7ubpqamQ2JNTU10d3dXKCOzdFz0zVJoaGhg1apVh8RWrVpFQ0NDhTIyS8dF3yyFtrY2Wltb6ezsZN++fXR2dtLa2kpbW1ulUzMriU/kmqXQd7J24cKFdHd309DQQHt7u0/iWtXQ8e6RK2kJ8EVgS0TMSmKPAuckq5wK/L+IOE/SVKAbeD15b3VEfCXZ5nxgKXAS8AzwZ1HCDXobGxvDE67ZSOQJ12ykkrQmIhr7e6+Ulv5S4K+Ah/oCEfHlop1/F9hetP6bEXFeP/u5D7gF+CWFon858GwJxzczszI5bp9+RLwAbO3vPUkCvgQc8+oUSZOAUyJiddK6fwi4Kn26ZmY2GIM9kXsx8H5EvFEUmybpV5L+j6SLk1g90FO0Tk8SMzOzYTTYE7ktHNrKfw/47Yj4MOnD/9+SZqbdqaT5wHyAuro68vn8INM0K7+dO3f6u2lVZ8BFX1IN8MfA+X2xiNgN7E6W10h6Ezgb6AWmFG0+JYn1KyIWA4uhcCLXJ8tsJPKJXKtGg+ne+UPgtYg42G0j6QxJo5Pl3wGmA29FxHvADkkXJucBrgOeGsSxzcxsAI5b9CXlgF8A50jqkdSavHUNR57A/QPgFUlrgceBr0RE30ngrwJ/DWwE3sQjd6xKeZZNq2bH7d6JiH6vOomIG/qJPQE8cZT1u4BZKfMzG1E8y6ZVO0/DYJaCZ9m0aueib5aCZ9m0aueib5aCZ9m0aueib5aCZ9m0audZNs1S8CybVu2OO8tmpXmWTRupfHGWjVTHmmXT3TtmZhniom9mliEu+mZmGeKib2aWIS76ZmYZ4qJvZpYhLvpmZhniom9mliEu+mZmGeKib2aWIS76ZmYZ4qJvZpYhLvpmZhniom9mliHHLfqSlkjaImldUexbknolrU0e84reu1PSRkmvS7qsKH55EtsoaVH5P4qZmR1PKS39pcDl/cS/FxHnJY9nACTNAK4BZibb3CtptKTRwA+BucAMoCVZ18zMhtFx75wVES9Imlri/q4EHomI3cAmSRuBC5L3NkbEWwCSHknW3ZA6YzMzG7DB3C7xNknXAV3A7RGxDagHVhet05PEAN45LP57R9uxpPnAfIC6ujry+fwg0jQbGjt37vR306rOQIv+fcBdQCTP3wVuKldSEbEYWAyF2yX6lnQ2Evl2iVaNBlT0I+L9vmVJDwA/SV72AmcWrToliXGMuJmZDZMBDdmUNKno5dVA38ieZcA1kmolTQOmAy8CLwHTJU2TNJbCyd5lA0/bzMwG4rgtfUk5YDZwuqQe4JvAbEnnUeje2QwsAIiI9ZIeo3CCdh9wa0TsT/ZzG7AcGA0siYj1Zf80ZmZ2TKWM3mnpJ9xxjPXbgfZ+4s8Az6TKzszMyspX5JqZZYiLvplZhrjom5lliIu+mVmGuOibmWWIi76ZWYa46JuZZYiLvplZhrjom5lliIu+mVmGuOibmWWIi76ZWYa46JuZZYiLvplZhrjom5lliIu+mVmGuOibmWWIi76ZWYa46JuZZchxi76kJZK2SFpXFLtH0muSXpH0pKRTk/hUSR9LWps8flS0zfmSXpW0UdL3JWloPpKZmR1NKS39pcDlh8WeB2ZFxL8Cfg3cWfTemxFxXvL4SlH8PuAWYHryOHyfZmY2xI5b9CPiBWDrYbGfRsS+5OVqYMqx9iFpEnBKRKyOiAAeAq4aWMpmlZXL5Zg1axZz5sxh1qxZ5HK5SqdkVrKaMuzjJuDRotfTJP0K2AH8x4j4e6Ae6ClapyeJ9UvSfGA+QF1dHfl8vgxpmg3eihUr6Ojo4I477mDatGls2rSJ22+/nQ0bNjBnzpxKp2d2fBFx3AcwFVjXT7wNeBJQ8roWmJgsnw+8A5wCNAI/K9ruYuAnpRz7/PPPD7ORYubMmbFy5cqIiOjs7IyIiJUrV8bMmTMrmJXZoYCuOEpNHXBLX9INwBeBOclBiIjdwO5keY2kN4GzgV4O7QKaksTMqkp3dzdNTU2HxJqamuju7q5QRmbpDGjIpqTLga8DV0TER0XxMySNTpZ/h8IJ27ci4j1gh6QLk1E71wFPDTp7s2HW0NDAqlWrDomtWrWKhoaGCmVklk4pQzZzwC+AcyT1SGoF/go4GXj+sKGZfwC8Imkt8DjwlYjoOwn8VeCvgY3Am8Cz5f0oZkOvra2N1tZWOjs72bdvH52dnbS2ttLW1lbp1MxKctzunYho6SfccZR1nwCeOMp7XcCsVNmZjTAtLYX/DgsXLqS7u5uGhgba29sPxs1Gur4TsCNWY2NjdHV1VToNsyPk83lmz55d6TTMjiBpTUQ09veep2EwS8nj9K2alWOcvllm5HI52tra6OjoYP/+/YwePZrW1lYAd/FYVXBL3yyF9vZ2Ojo6aG5upqamhubmZjo6Omhvb690amYlcdE3S8Hj9K3aueibpeBx+lbtXPTNUvA4fat2PpFrloLH6Vu1c0vfzCxD3NI3S8FDNq3auaVvloKHbFq1c9E3S6G7u5uenp5Drsjt6enxkE2rGu7eMUth8uTJfOMb3+Dhhx8+2L1z7bXXMnny5EqnZlYSt/TNUjp8ksKRPmmhWTG39M1SePfdd1m6dOkhQzbvvvtubrjhhkqnZlYSt/TNUmhoaGDKlCmsW7eOFStWsG7dOqZMmeIrcq1quOibpeArcq3auXvHLAVfkWvVznfOMhsg3znLRqpB3zlL0hJJWyStK4qdJul5SW8kz59J4pL0fUkbJb0i6fNF21yfrP+GpOsH+8HMzCydUvv0lwKXHxZbBKyIiOnAiuQ1wFxgevKYD9wHhR8J4JvA7wEXAN/s+6EwM7PhUVLRj4gXgK2Hha8EHkyWHwSuKoo/FAWrgVMlTQIuA56PiK0RsQ14niN/SMzMbAgNZvROXUS8lyz/E1CXLNcD7xSt15PEjhY3M7NhUpbROxERksp2RljSfApdQ9TV1ZHP58u1a7Oy2blzp7+bVnUGU/TflzQpIt5Lum+2JPFe4Myi9aYksV5g9mHxfH87jojFwGIojN7xCAkbiTx6x6rRYLp3lgF9I3CuB54qil+XjOK5ENiedAMtBy6V9JnkBO6lSczMzIZJSS19STkKrfTTJfVQGIXzbeAxSa3A28CXktWfAeYBG4GPgBsBImKrpLuAl5L1/iIiDj85bGZmQ6ikoh8RR7vccE4/6wZw61H2swRYUnJ2ZmZWVp57x8wsQ1z0zcwyxEXfzCxDXPTNzDLERd8spVwud8iN0XO5XKVTMiuZ59M3SyGXy9HW1kZHR8fBG6O3trYCeE59qwpu6Zul0N7eTkdHB83NzdTU1NDc3ExHRwft7e2VTs2sJC76Zil0d3fT1NR0SKypqYnu7u4KZWSWjou+WQoNDQ2sWrXqkNiqVat8Y3SrGi76Zin4xuhW7Xwi1yyFlpYWfv7znzN37lx2795NbW0tt9xyi0/iWtVw0TdLIZfL8fTTT/Pss88eMnrnoosucuG3quDuHbMUPHrHqp2LvlkKHr1j1c5F3ywFj96xaueib5aCR+9YtfOJXLMU+k7WLly4kO7ubhoaGmhvb/dJXKsaKtzoauRqbGyMrq6uSqdhdgTfGN1GKklrIqKxv/fcvWNmliEu+mZmGTLgoi/pHElrix47JH1N0rck9RbF5xVtc6ekjZJel3RZeT6C2fDyfPpWzQZ8IjciXgfOA5A0GugFngRuBL4XEX9ZvL6kGcA1wExgMvAzSWdHxP6B5mA23DyfvlW7cnXvzAHejIi3j7HOlcAjEbE7IjYBG4ELynR8s2HR3t7Oueeey9y5c7nkkkuYO3cu5557rq/ItapRriGb1wDFf+PeJuk6oAu4PSK2AfXA6qJ1epLYESTNB+YD1NXVkc/ny5Sm2eCsX7+e7u5uFixYwBe+8AVWrlzJ/fffz4EDB/w9taow6KIvaSxwBXBnEroPuAuI5Pm7wE1p9hkRi4HFUBiy6WFxNlJIYsGCBdx7773k83nuvfdeAH70ox95+KZVhXK09OcCL0fE+wB9zwCSHgB+krzsBc4s2m5KEjOrGhHB448/zrPPPsvbb7/NZz/7WXbt2sVIv97FrE85+vRbKOrakTSp6L2rgXXJ8jLgGkm1kqYB04EXy3B8s2FTU1PDjh076O3tJSLo7e1lx44d1NT44narDoMq+pLGA5cAf1cUvlvSq5JeAZqBPweIiPXAY8AG4DngVo/csWpTW1vL7t27ufnmm/nxj3/MzTfffPBmKmbVwNMwmKUgiSuuuILly5cfLPaXXXYZy5YtcxePjRiehsGsjGbMmMFZZ53FqFGjOOuss5gxY0alUzIrmTsizVI47bTTuOeee7j77ruZMWMGGzZs4Otf/zqnnXZapVMzK4mLvlkK48aN4+OPP2bRokXs3buXMWPGMHbsWMaNG1fp1MxK4u4dsxR6e3uZMGEC9fX1SKK+vp4JEybQ2+vRx1YdXPTNUhg7diyLFi1i06ZNrFy5kk2bNrFo0SLGjh1b6dTMSuLRO2YpjBo1iokTJzJhwoSDF2ft3LmTDz/8kAMHDlQ6PTPAo3fMyqa+vp69e/cCheGbAHv37qW+vt9ppMxGHJ/INUtp3LhxLFmy5ODUytdee22lUzIrmYu+WQrvvvsuCxYsYO7cuQcvzrrpppu4//77K52aWUncvWOWwuTJk8nlckyaNIlRo0YxadIkcrkckydPrnRqZiVxS98shY8++ojt27dTW1tLRPDxxx+zfft2Ro1y+8mqg7+pZils3bqVU045hZNOOgmAk046iVNOOYWtW7dWODOz0rjom6U0b948xo8fjyTGjx/PvHnzKp2SWcncvWOW0qOPPso999xzcO6dO+64o9IpmZXMRd8shZqaGkaPHn3I3Dtjxoxh/37fGsKqg7t3zFLYt28fe/fuZeLEiQevzt27dy/79u2rdGpmJXHRN0uhtraWlpYWJk6cCMDEiRNpaWnxnbOsarjom6WwZ88eli9fzq5duwDYtWsXy5cvZ8+ePRXOzKw07tM3S6G+vp4tW7bwwQcfALB582bGjh3ruXesagy6pS9pc3Ij9LWSupLYaZKel/RG8vyZJC5J35e0UdIrkj4/2OObDadt27axZ8+egxdjjRo1ij179rBt27YKZ2ZWmnJ17zRHxHlFU3kuAlZExHRgRfIaYC4wPXnMB+4r0/HNhkVft07fNMp9z31xs5FuqPr0rwQeTJYfBK4qij8UBauBUyVNGqIczIZMcUvfrJqUo08/gJ9KCuD+iFgM1EXEe8n7/wTUJcv1wDtF2/YksfeKYkiaT+EvAerq6sjn82VI06x8Dm/pA/6eWlUoR9FvioheSb8FPC/pteI3IyKSH4SSJT8ci6Fw56zZs2eXIU2z8vnUpz7FJ598cvAZwN9TqwaD/ts0InqT5y3Ak8AFwPt93TbJ85Zk9V7gzKLNpyQxs6rSV+j7ns2qxaCKvqTxkk7uWwYuBdYBy4Drk9WuB55KlpcB1yWjeC4Ethd1A5mZ2RAbbPdOHfBkcq/QGuBvI+I5SS8Bj0lqBd4GvpSs/wwwD9gIfATcOMjjm5lZCoMq+hHxFnBuP/EPgTn9xAO4dTDHNDOzgfN4MzOzDHHRNzPLEBd9M7MMcdE3M8sQF30zswxx0TcbAM+9Y9XK8+mbAcm1JiXrb+6dUvdRGLlsVhku+maUXoiPVdhdzK0a+G9TsxRuu+22VHGzkcYtfbMUfvCDHwDwwAMPsHv3bmpra7nlllsOxs1GOo30P0kbGxujq6ur0mmYHWHqoqfZ/O0/qnQaZkeQtKboToaHcPeOmVmGuOibmWWIi76ZWYa46JuZZYiLvplZhrjom5lliIu+mVmGuOibmWXIgIu+pDMldUraIGm9pD9L4t+S1CtpbfKYV7TNnZI2Snpd0mXl+ABmZla6wUzDsA+4PSJelnQysEbS88l734uIvyxeWdIM4BpgJjAZ+JmksyNi/yByMDOzFAbc0o+I9yLi5WT5N0A3UH+MTa4EHomI3RGxCdgIXDDQ45uZWXplmXBN0lTgc8Avgd8HbpN0HdBF4a+BbRR+EFYXbdbDUX4kJM0H5gPU1dWRz+fLkaZlyK0rdrFr79AfZ+qip4d0/+PHwA/njB/SY1i2DLroS5oAPAF8LSJ2SLoPuAuI5Pm7wE1p9hkRi4HFUJhwbfbs2YNN0zJm13NDPxlaPp9nqL+bUxc9PeTHsGwZ1OgdSWMoFPyHI+LvACLi/YjYHxEHgAf45y6cXuDMos2nJDEzMxsmgxm9I6AD6I6I/14Un1S02tXAumR5GXCNpFpJ04DpwIsDPb6ZmaU3mO6d3wf+FHhV0tok9h+AFknnUeje2QwsAIiI9ZIeAzZQGPlzq0fumJkNrwEX/YhYBfR3w9BnjrFNO9A+0GOamdng+IpcM7MM8T1y7YR0csMifvfBRUN/oAeHdvcnNwD4loxWPi76dkL6Tfe3T5ghm2bl5O4dM7MMcdE3M8sQd+/YCWtYukaeG9pjfPqkMUO6f8seF307IQ11fz4UflSG4zhm5eTuHTOzDHHRNzPLEBd9M7MMcdE3M8sQF30zswxx0TczyxAXfTOzDHHRNzPLEF+cZQYUbgQ3gO2+k36biBjQsczKwS19MwqFOO2js7NzQNuZVZKLvplZhrjom5llyLAXfUmXS3pd0kZJw3BrIzMz6zOsRV/SaOCHwFxgBtAiacZw5mBmlmXD3dK/ANgYEW9FxB7gEeDKYc7BzCyzhrvo1wPvFL3uSWJmZjYMRuQ4fUnzgfkAdXV15PP5yiZk1o+dO3f6u2lVZ7iLfi9wZtHrKUnsEBGxGFgM0NjYGLNnzx6W5MzSyOfz+Ltp1UbDebGIpBrg18AcCsX+JeDfRMT6Y2zzf4G3hydDs1ROBz6odBJm/fhsRJzR3xvD2tKPiH2SbgOWA6OBJccq+Mk2/SZuVmmSuiKisdJ5mKUxrC19sxOJi75VI1+Ra2aWIS76ZgO3uNIJmKXl7h0zswxxS9/MLENc9M3MMsRF38wsQ1z0zRKSviZpXNHrZySdWsmczMrNJ3LthKDCTW4VEQcGsY/NQGNE+CpbO2G5pW9VS9LU5IY8DwHrgP8k6SVJr0j6z8k64yU9LekfJa2T9OWj7OvfA5OBTkmdSWyzpNOT47wmaamkX0t6WNIfSvoHSW9IuqDoWEskvSjpV5KOOm14ss+/l/Ry8rgoiT8i6Y+K1lsq6U8kjZP0mKQNkp6U9EtJvjDMUnNL36qWpKnAW8BFwCnAnwALAAHLgLuBM4DLI+KWZJtPR8T2o+xvM0Ut/b7XwARgI/A5YD2FOaP+EWgFrgBujIirJP1XYENE/E3SLfQi8LmI2NXPscYBByLiE0nTgVxENEq6GrgqIq6XNBZ4EzgbuBWYHhELJM0C1gIXRkTXgP8BLZPc0rdq93ZErAYuTR6/Al4G/iUwHXgVuETSdyRdfLSCX4JNEfFq0n20HlgRhRbTq8DUZJ1LgUWS1gJ54FPAbx9lf2OAByS9CvwvCneSA3gWaJZUS+EOcy9ExMdAE4WbDhER64BXBvg5LONG5Hz6Zin0taIF/LeIuP/wFSR9HpgH/BdJKyLiLwZwnN1FyweKXh/gn/8fCfjXEfF6Cfv7c+B94FwKja9PAJKWfx64DPgySaE3Kxe39O1EsRy4SdIEAEn1kn5L0mTgo4j4G+Ae4PPH2MdvgJMHmcPC5KQykj53jHU/DbyX/OXwpxRmne3zKHAjcDHwXBL7B+BLyX5nAL87iDwtw9zStxNCRPxUUgPwi6Tm7gT+LXAWcI+kA8Be4N8dYzeLgeckvRsRzQNI4y7gfwCvSBoFbAK+eJR17wWekHQdhcJe3O//U+B/Ak8l95LuW/9BSRuA1yh0MQ20q8oyzCdyzaqApNHAmKT7518APwPOKfpRMCuJW/pm1WEcheGkYyicO/iqC74NhFv6ljmSngSmHRb+RkQsH4JjXQZ857Dwpoi4utzHMiuFi76ZWYZ49I6ZWYa46JuZZYiLvplZhrjom5llyP8HHiUM7lEv2ZIAAAAASUVORK5CYII=\n",
      "text/plain": [
       "<Figure size 432x288 with 1 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "df['2019-5-1'][['res_time_avg']].boxplot()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 54,
   "metadata": {},
   "outputs": [
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "<ipython-input-54-46b1193ea45a>:2: UserWarning: Boolean Series key will be reindexed to match DataFrame index.\n",
      "  df2[df['res_time_avg']>1000]\n"
     ]
    },
    {
     "data": {
      "text/html": [
       "<div>\n",
       "<style scoped>\n",
       "    .dataframe tbody tr th:only-of-type {\n",
       "        vertical-align: middle;\n",
       "    }\n",
       "\n",
       "    .dataframe tbody tr th {\n",
       "        vertical-align: top;\n",
       "    }\n",
       "\n",
       "    .dataframe thead th {\n",
       "        text-align: right;\n",
       "    }\n",
       "</style>\n",
       "<table border=\"1\" class=\"dataframe\">\n",
       "  <thead>\n",
       "    <tr style=\"text-align: right;\">\n",
       "      <th></th>\n",
       "      <th>count</th>\n",
       "      <th>res_time_sum</th>\n",
       "      <th>res_time_min</th>\n",
       "      <th>res_time_max</th>\n",
       "      <th>res_time_avg</th>\n",
       "      <th>created_at</th>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>created_at</th>\n",
       "      <th></th>\n",
       "      <th></th>\n",
       "      <th></th>\n",
       "      <th></th>\n",
       "      <th></th>\n",
       "      <th></th>\n",
       "    </tr>\n",
       "  </thead>\n",
       "  <tbody>\n",
       "    <tr>\n",
       "      <th>2019-05-01 00:34:48</th>\n",
       "      <td>1</td>\n",
       "      <td>1694.47</td>\n",
       "      <td>1694.47</td>\n",
       "      <td>1694.47</td>\n",
       "      <td>1694.0</td>\n",
       "      <td>2019-05-01 00:34:48</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2019-05-01 14:00:49</th>\n",
       "      <td>17</td>\n",
       "      <td>19770.18</td>\n",
       "      <td>207.54</td>\n",
       "      <td>2974.52</td>\n",
       "      <td>1162.0</td>\n",
       "      <td>2019-05-01 14:00:49</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2019-05-01 18:36:49</th>\n",
       "      <td>8</td>\n",
       "      <td>8799.92</td>\n",
       "      <td>96.59</td>\n",
       "      <td>3233.26</td>\n",
       "      <td>1099.0</td>\n",
       "      <td>2019-05-01 18:36:49</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2019-05-01 19:09:49</th>\n",
       "      <td>6</td>\n",
       "      <td>7399.94</td>\n",
       "      <td>307.39</td>\n",
       "      <td>3153.02</td>\n",
       "      <td>1233.0</td>\n",
       "      <td>2019-05-01 19:09:49</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2019-05-01 19:10:49</th>\n",
       "      <td>13</td>\n",
       "      <td>23595.60</td>\n",
       "      <td>206.20</td>\n",
       "      <td>4664.84</td>\n",
       "      <td>1815.0</td>\n",
       "      <td>2019-05-01 19:10:49</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2019-05-01 20:38:49</th>\n",
       "      <td>15</td>\n",
       "      <td>16169.25</td>\n",
       "      <td>142.47</td>\n",
       "      <td>3624.26</td>\n",
       "      <td>1077.0</td>\n",
       "      <td>2019-05-01 20:38:49</td>\n",
       "    </tr>\n",
       "  </tbody>\n",
       "</table>\n",
       "</div>"
      ],
      "text/plain": [
       "                     count  res_time_sum  res_time_min  res_time_max  \\\n",
       "created_at                                                             \n",
       "2019-05-01 00:34:48      1       1694.47       1694.47       1694.47   \n",
       "2019-05-01 14:00:49     17      19770.18        207.54       2974.52   \n",
       "2019-05-01 18:36:49      8       8799.92         96.59       3233.26   \n",
       "2019-05-01 19:09:49      6       7399.94        307.39       3153.02   \n",
       "2019-05-01 19:10:49     13      23595.60        206.20       4664.84   \n",
       "2019-05-01 20:38:49     15      16169.25        142.47       3624.26   \n",
       "\n",
       "                     res_time_avg           created_at  \n",
       "created_at                                              \n",
       "2019-05-01 00:34:48        1694.0  2019-05-01 00:34:48  \n",
       "2019-05-01 14:00:49        1162.0  2019-05-01 14:00:49  \n",
       "2019-05-01 18:36:49        1099.0  2019-05-01 18:36:49  \n",
       "2019-05-01 19:09:49        1233.0  2019-05-01 19:09:49  \n",
       "2019-05-01 19:10:49        1815.0  2019-05-01 19:10:49  \n",
       "2019-05-01 20:38:49        1077.0  2019-05-01 20:38:49  "
      ]
     },
     "execution_count": 54,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "df2 = df['2019-5-1']\n",
    "df2[df['res_time_avg']>1000]"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 55,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 432x288 with 1 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "# 2019-05-01 00:34:48\t1\t1694.47\t1694.47\t1694.47\t1694.0\t2019-05-01 00:34:48 定义为异常\n",
    "df['2019-5-1'][['res_time_sum','res_time_min','res_time_max','res_time_avg']].plot()\n",
    "plt.show()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 56,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 432x288 with 1 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "data = df['2019-5-1'].resample('20T').mean()\n",
    "data[['res_time_sum','res_time_min','res_time_max','res_time_avg']].plot()\n",
    "plt.show()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 57,
   "metadata": {},
   "outputs": [],
   "source": [
    "#业务高峰时段下午2-3点，晚上7-8点，响应时间都是上升的"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 58,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 432x288 with 1 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "df['2019-5-1':'2019-5-10']['count'].plot()\n",
    "plt.show()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 59,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "Int64Index([3, 3, 3, 3, 3, 3, 3, 3, 3, 3,\n",
       "            ...\n",
       "            3, 3, 3, 3, 3, 3, 3, 3, 3, 3],\n",
       "           dtype='int64', name='created_at', length=865)"
      ]
     },
     "execution_count": 59,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "# 每天的情况差不多，下面看看周末和平常是不是一样\n",
    "df['2019-5-2'].index.weekday"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 60,
   "metadata": {},
   "outputs": [],
   "source": [
    "df['weekday'] = df.index.weekday"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 61,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/html": [
       "<div>\n",
       "<style scoped>\n",
       "    .dataframe tbody tr th:only-of-type {\n",
       "        vertical-align: middle;\n",
       "    }\n",
       "\n",
       "    .dataframe tbody tr th {\n",
       "        vertical-align: top;\n",
       "    }\n",
       "\n",
       "    .dataframe thead th {\n",
       "        text-align: right;\n",
       "    }\n",
       "</style>\n",
       "<table border=\"1\" class=\"dataframe\">\n",
       "  <thead>\n",
       "    <tr style=\"text-align: right;\">\n",
       "      <th></th>\n",
       "      <th>count</th>\n",
       "      <th>res_time_sum</th>\n",
       "      <th>res_time_min</th>\n",
       "      <th>res_time_max</th>\n",
       "      <th>res_time_avg</th>\n",
       "      <th>created_at</th>\n",
       "      <th>weekday</th>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>created_at</th>\n",
       "      <th></th>\n",
       "      <th></th>\n",
       "      <th></th>\n",
       "      <th></th>\n",
       "      <th></th>\n",
       "      <th></th>\n",
       "      <th></th>\n",
       "    </tr>\n",
       "  </thead>\n",
       "  <tbody>\n",
       "    <tr>\n",
       "      <th>2018-11-01 00:00:07</th>\n",
       "      <td>8</td>\n",
       "      <td>1057.31</td>\n",
       "      <td>88.75</td>\n",
       "      <td>177.72</td>\n",
       "      <td>132.0</td>\n",
       "      <td>2018-11-01 00:00:07</td>\n",
       "      <td>3</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2018-11-01 00:01:07</th>\n",
       "      <td>5</td>\n",
       "      <td>749.12</td>\n",
       "      <td>103.79</td>\n",
       "      <td>240.38</td>\n",
       "      <td>149.0</td>\n",
       "      <td>2018-11-01 00:01:07</td>\n",
       "      <td>3</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2018-11-01 00:02:07</th>\n",
       "      <td>5</td>\n",
       "      <td>845.84</td>\n",
       "      <td>136.31</td>\n",
       "      <td>225.73</td>\n",
       "      <td>169.0</td>\n",
       "      <td>2018-11-01 00:02:07</td>\n",
       "      <td>3</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2018-11-01 00:03:07</th>\n",
       "      <td>9</td>\n",
       "      <td>1305.52</td>\n",
       "      <td>90.12</td>\n",
       "      <td>196.61</td>\n",
       "      <td>145.0</td>\n",
       "      <td>2018-11-01 00:03:07</td>\n",
       "      <td>3</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2018-11-01 00:04:07</th>\n",
       "      <td>3</td>\n",
       "      <td>568.89</td>\n",
       "      <td>138.45</td>\n",
       "      <td>232.02</td>\n",
       "      <td>189.0</td>\n",
       "      <td>2018-11-01 00:04:07</td>\n",
       "      <td>3</td>\n",
       "    </tr>\n",
       "  </tbody>\n",
       "</table>\n",
       "</div>"
      ],
      "text/plain": [
       "                     count  res_time_sum  res_time_min  res_time_max  \\\n",
       "created_at                                                             \n",
       "2018-11-01 00:00:07      8       1057.31         88.75        177.72   \n",
       "2018-11-01 00:01:07      5        749.12        103.79        240.38   \n",
       "2018-11-01 00:02:07      5        845.84        136.31        225.73   \n",
       "2018-11-01 00:03:07      9       1305.52         90.12        196.61   \n",
       "2018-11-01 00:04:07      3        568.89        138.45        232.02   \n",
       "\n",
       "                     res_time_avg           created_at  weekday  \n",
       "created_at                                                       \n",
       "2018-11-01 00:00:07         132.0  2018-11-01 00:00:07        3  \n",
       "2018-11-01 00:01:07         149.0  2018-11-01 00:01:07        3  \n",
       "2018-11-01 00:02:07         169.0  2018-11-01 00:02:07        3  \n",
       "2018-11-01 00:03:07         145.0  2018-11-01 00:03:07        3  \n",
       "2018-11-01 00:04:07         189.0  2018-11-01 00:04:07        3  "
      ]
     },
     "execution_count": 61,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "df.head()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 62,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/html": [
       "<div>\n",
       "<style scoped>\n",
       "    .dataframe tbody tr th:only-of-type {\n",
       "        vertical-align: middle;\n",
       "    }\n",
       "\n",
       "    .dataframe tbody tr th {\n",
       "        vertical-align: top;\n",
       "    }\n",
       "\n",
       "    .dataframe thead th {\n",
       "        text-align: right;\n",
       "    }\n",
       "</style>\n",
       "<table border=\"1\" class=\"dataframe\">\n",
       "  <thead>\n",
       "    <tr style=\"text-align: right;\">\n",
       "      <th></th>\n",
       "      <th>count</th>\n",
       "      <th>res_time_sum</th>\n",
       "      <th>res_time_min</th>\n",
       "      <th>res_time_max</th>\n",
       "      <th>res_time_avg</th>\n",
       "      <th>created_at</th>\n",
       "      <th>weekday</th>\n",
       "      <th>weekend</th>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>created_at</th>\n",
       "      <th></th>\n",
       "      <th></th>\n",
       "      <th></th>\n",
       "      <th></th>\n",
       "      <th></th>\n",
       "      <th></th>\n",
       "      <th></th>\n",
       "      <th></th>\n",
       "    </tr>\n",
       "  </thead>\n",
       "  <tbody>\n",
       "    <tr>\n",
       "      <th>2018-11-01 00:00:07</th>\n",
       "      <td>8</td>\n",
       "      <td>1057.31</td>\n",
       "      <td>88.75</td>\n",
       "      <td>177.72</td>\n",
       "      <td>132.0</td>\n",
       "      <td>2018-11-01 00:00:07</td>\n",
       "      <td>3</td>\n",
       "      <td>False</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2018-11-01 00:01:07</th>\n",
       "      <td>5</td>\n",
       "      <td>749.12</td>\n",
       "      <td>103.79</td>\n",
       "      <td>240.38</td>\n",
       "      <td>149.0</td>\n",
       "      <td>2018-11-01 00:01:07</td>\n",
       "      <td>3</td>\n",
       "      <td>False</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2018-11-01 00:02:07</th>\n",
       "      <td>5</td>\n",
       "      <td>845.84</td>\n",
       "      <td>136.31</td>\n",
       "      <td>225.73</td>\n",
       "      <td>169.0</td>\n",
       "      <td>2018-11-01 00:02:07</td>\n",
       "      <td>3</td>\n",
       "      <td>False</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2018-11-01 00:03:07</th>\n",
       "      <td>9</td>\n",
       "      <td>1305.52</td>\n",
       "      <td>90.12</td>\n",
       "      <td>196.61</td>\n",
       "      <td>145.0</td>\n",
       "      <td>2018-11-01 00:03:07</td>\n",
       "      <td>3</td>\n",
       "      <td>False</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2018-11-01 00:04:07</th>\n",
       "      <td>3</td>\n",
       "      <td>568.89</td>\n",
       "      <td>138.45</td>\n",
       "      <td>232.02</td>\n",
       "      <td>189.0</td>\n",
       "      <td>2018-11-01 00:04:07</td>\n",
       "      <td>3</td>\n",
       "      <td>False</td>\n",
       "    </tr>\n",
       "  </tbody>\n",
       "</table>\n",
       "</div>"
      ],
      "text/plain": [
       "                     count  res_time_sum  res_time_min  res_time_max  \\\n",
       "created_at                                                             \n",
       "2018-11-01 00:00:07      8       1057.31         88.75        177.72   \n",
       "2018-11-01 00:01:07      5        749.12        103.79        240.38   \n",
       "2018-11-01 00:02:07      5        845.84        136.31        225.73   \n",
       "2018-11-01 00:03:07      9       1305.52         90.12        196.61   \n",
       "2018-11-01 00:04:07      3        568.89        138.45        232.02   \n",
       "\n",
       "                     res_time_avg           created_at  weekday  weekend  \n",
       "created_at                                                                \n",
       "2018-11-01 00:00:07         132.0  2018-11-01 00:00:07        3    False  \n",
       "2018-11-01 00:01:07         149.0  2018-11-01 00:01:07        3    False  \n",
       "2018-11-01 00:02:07         169.0  2018-11-01 00:02:07        3    False  \n",
       "2018-11-01 00:03:07         145.0  2018-11-01 00:03:07        3    False  \n",
       "2018-11-01 00:04:07         189.0  2018-11-01 00:04:07        3    False  "
      ]
     },
     "execution_count": 62,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "# 判断是否周末，是不是5，6\n",
    "df['weekend'] = df['weekday'].isin({5,6})\n",
    "df.head()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 63,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "weekend\n",
       "False    7.016846\n",
       "True     7.574989\n",
       "Name: count, dtype: float64"
      ]
     },
     "execution_count": 63,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "# 对weekend进行分组， 对count列求平均值\n",
    "df.groupby('weekend')['count'].mean()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 65,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "weekend  created_at\n",
       "False    0              3.239120\n",
       "         1              1.668388\n",
       "         2              1.162551\n",
       "         3              1.086705\n",
       "         4              1.155556\n",
       "         5              1.136364\n",
       "         6              1.000000\n",
       "         7              1.000000\n",
       "         8              1.000000\n",
       "         9              1.080000\n",
       "         10             1.239011\n",
       "         11             2.031690\n",
       "         12             4.195845\n",
       "         13             6.668042\n",
       "         14             8.260503\n",
       "         15             8.934448\n",
       "         16             8.466504\n",
       "         17             6.784996\n",
       "         18             6.717731\n",
       "         19             8.655913\n",
       "         20            10.536496\n",
       "         21            10.846906\n",
       "         22             9.034164\n",
       "         23             5.946834\n",
       "True     0              3.467782\n",
       "         1              1.741849\n",
       "         2              1.161826\n",
       "         3              1.050000\n",
       "         4              1.076923\n",
       "         5              1.333333\n",
       "         6              1.000000\n",
       "         7              1.000000\n",
       "         8              1.071429\n",
       "         9              1.144928\n",
       "         10             1.254111\n",
       "         11             1.992958\n",
       "         12             4.031889\n",
       "         13             6.905772\n",
       "         14             8.851321\n",
       "         15             9.858422\n",
       "         16             9.420550\n",
       "         17             7.334743\n",
       "         18             7.342150\n",
       "         19             9.270430\n",
       "         20            11.173609\n",
       "         21            11.695043\n",
       "         22            10.419916\n",
       "         23             7.025452\n",
       "Name: count, dtype: float64"
      ]
     },
     "execution_count": 65,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "# 周末调用平均次数多 7.57\n",
    "# 周末哪个时段调用次数比较高\n",
    "\n",
    "df.groupby(['weekend', df.index.hour])['count'].mean()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 66,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 432x288 with 1 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "# 周末和非周末，具体时间对比，绘制成图形，否则不直观\n",
    "df.groupby(['weekend', df.index.hour])['count'].mean().plot()\n",
    "plt.show()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 67,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/html": [
       "<div>\n",
       "<style scoped>\n",
       "    .dataframe tbody tr th:only-of-type {\n",
       "        vertical-align: middle;\n",
       "    }\n",
       "\n",
       "    .dataframe tbody tr th {\n",
       "        vertical-align: top;\n",
       "    }\n",
       "\n",
       "    .dataframe thead th {\n",
       "        text-align: right;\n",
       "    }\n",
       "</style>\n",
       "<table border=\"1\" class=\"dataframe\">\n",
       "  <thead>\n",
       "    <tr style=\"text-align: right;\">\n",
       "      <th>weekend</th>\n",
       "      <th>False</th>\n",
       "      <th>True</th>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>created_at</th>\n",
       "      <th></th>\n",
       "      <th></th>\n",
       "    </tr>\n",
       "  </thead>\n",
       "  <tbody>\n",
       "    <tr>\n",
       "      <th>0</th>\n",
       "      <td>3.239120</td>\n",
       "      <td>3.467782</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>1</th>\n",
       "      <td>1.668388</td>\n",
       "      <td>1.741849</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2</th>\n",
       "      <td>1.162551</td>\n",
       "      <td>1.161826</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>3</th>\n",
       "      <td>1.086705</td>\n",
       "      <td>1.050000</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>4</th>\n",
       "      <td>1.155556</td>\n",
       "      <td>1.076923</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>5</th>\n",
       "      <td>1.136364</td>\n",
       "      <td>1.333333</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>6</th>\n",
       "      <td>1.000000</td>\n",
       "      <td>1.000000</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>7</th>\n",
       "      <td>1.000000</td>\n",
       "      <td>1.000000</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>8</th>\n",
       "      <td>1.000000</td>\n",
       "      <td>1.071429</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>9</th>\n",
       "      <td>1.080000</td>\n",
       "      <td>1.144928</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>10</th>\n",
       "      <td>1.239011</td>\n",
       "      <td>1.254111</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>11</th>\n",
       "      <td>2.031690</td>\n",
       "      <td>1.992958</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>12</th>\n",
       "      <td>4.195845</td>\n",
       "      <td>4.031889</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>13</th>\n",
       "      <td>6.668042</td>\n",
       "      <td>6.905772</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>14</th>\n",
       "      <td>8.260503</td>\n",
       "      <td>8.851321</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>15</th>\n",
       "      <td>8.934448</td>\n",
       "      <td>9.858422</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>16</th>\n",
       "      <td>8.466504</td>\n",
       "      <td>9.420550</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>17</th>\n",
       "      <td>6.784996</td>\n",
       "      <td>7.334743</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>18</th>\n",
       "      <td>6.717731</td>\n",
       "      <td>7.342150</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>19</th>\n",
       "      <td>8.655913</td>\n",
       "      <td>9.270430</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>20</th>\n",
       "      <td>10.536496</td>\n",
       "      <td>11.173609</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>21</th>\n",
       "      <td>10.846906</td>\n",
       "      <td>11.695043</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>22</th>\n",
       "      <td>9.034164</td>\n",
       "      <td>10.419916</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>23</th>\n",
       "      <td>5.946834</td>\n",
       "      <td>7.025452</td>\n",
       "    </tr>\n",
       "  </tbody>\n",
       "</table>\n",
       "</div>"
      ],
      "text/plain": [
       "weekend         False      True \n",
       "created_at                      \n",
       "0            3.239120   3.467782\n",
       "1            1.668388   1.741849\n",
       "2            1.162551   1.161826\n",
       "3            1.086705   1.050000\n",
       "4            1.155556   1.076923\n",
       "5            1.136364   1.333333\n",
       "6            1.000000   1.000000\n",
       "7            1.000000   1.000000\n",
       "8            1.000000   1.071429\n",
       "9            1.080000   1.144928\n",
       "10           1.239011   1.254111\n",
       "11           2.031690   1.992958\n",
       "12           4.195845   4.031889\n",
       "13           6.668042   6.905772\n",
       "14           8.260503   8.851321\n",
       "15           8.934448   9.858422\n",
       "16           8.466504   9.420550\n",
       "17           6.784996   7.334743\n",
       "18           6.717731   7.342150\n",
       "19           8.655913   9.270430\n",
       "20          10.536496  11.173609\n",
       "21          10.846906  11.695043\n",
       "22           9.034164  10.419916\n",
       "23           5.946834   7.025452"
      ]
     },
     "execution_count": 67,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "# 周末和非周末数据叠加\n",
    "df.groupby(['weekend', df.index.hour])['count'].mean().unstack(level=0)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 68,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 432x288 with 1 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "df.groupby(['weekend', df.index.hour])['count'].mean().unstack(level=0).plot()\n",
    "plt.show()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {},
   "outputs": [],
   "source": []
  }
 ],
 "metadata": {
  "kernelspec": {
   "display_name": "Python 3",
   "language": "python",
   "name": "python3"
  },
  "language_info": {
   "codemirror_mode": {
    "name": "ipython",
    "version": 3
   },
   "file_extension": ".py",
   "mimetype": "text/x-python",
   "name": "python",
   "nbconvert_exporter": "python",
   "pygments_lexer": "ipython3",
   "version": "3.8.2"
  }
 },
 "nbformat": 4,
 "nbformat_minor": 4
}
